问题 在HTML5中使用网站名称上的


如何在HTML5中正确标记网站的标题?通常我用以下标记网站的名称:

<h1>
    <a href=#>Website Name</a>
</h1>

最近我遇到了HTML5文档概述算法。我还读到,似乎在h1标签中标记您的网站名称没有意义,因为除了网站名称之外,每个页面可能都有不同的主标题(h1)。

如果让我们在Facebook上说,如果Facebook的标识/标题的标记被包含,那该怎么办? <h1> 标签。然后,如果每个帖子都包含在内 <article> 标签。例如:

<article class="post">
    <h5 class="post-header">
         <a href="#">Someone has shared Blah Blah's photo</a>
    </h5>
     <div class="post-body">...</div>
</article>

我认为文件大纲是

  1. Facebook的

    1.1有人分享了Blah Blah的照片

    1.2其他职位

    1.3其他职位

可以吗?


5486
2018-02-16 16:59


起源

检查一下 youtube.com/watch?v=GIn5qJKU8VM - NullPoiиteя
我会根据您使用切片的方式达成一致意见。每页上完全相同的h1可能不好。但是,分区的方式适用于HTML5,它可能是可行的。只需在HTML5大纲中查看您的大纲即可。 - Leeish
我们在办公室的SEO专家说每页应该只有一个h1。此外,最好突出显示描述当前页面内容的重要文本而不是图像,这样就没有任何价值。 - Dejan.S
这值得一读 csswizardry.com/2010/10/your-logo-is-an-image-not-a-h1 - Matt Saunders
可能重复 如何在HTML5中正确使用h1 - chharvey


答案:


特别 因为 使用的轮廓是有道理的 h1

如果您的网页是网站的一部分,则每个网页都应有一个网站标题 h1,其中包含网站标题,网站徽标或两者。这个网站标题很重要  分段元素的孩子(section/article/aside/nav)。

因此页面的顶级标题将始终是站点标题。并且网站导航,页面的主要内容,带有辅助内容的侧边栏等都将是该顶级标题的“孩子”。

因此,博客帖子页面的简单结构可能是:

<body>
  <h1><img src="logo.png" alt="John's blog"></h1>

  <nav><!-- the site-wide navigation --></nav> 

  <article>
    <h1>My first blog post</h1>
    <p>…</p>
    <footer><!-- this footer applies to the article only--></footer>
  </article>

  <footer><!-- this footer applies to the whole page (→ the site)--></footer>

</body> 

这将创建一个如下轮廓:

1 John's blog (→ body>h1)
  1.1 untitled (→ body>nav)
  1.2 My first blog post (→ body>article>h1)

如果您不使用网站标题/徽标 h1,该页面将有一个无标题的顶级大纲条目:

1 untitled (→ body)
  1.1 untitled (→ body>nav)
  1.2 My first blog post (→ body>article>h1)

如果你不使用 h1 网站标题/徽标  没有主要内容的分段元素......

<body>
  <img src="logo.png" alt="John's blog"> <!-- omitted h1 -->

  <nav><!-- the site-wide navigation --></nav> 

  <!-- omitted article -->
  <h1>My first blog post</h1>
  <p>…</p>

</body> 

...你会得到一个包含两个顶级条目的大纲:

1 untitled (→ body)
  1.1 untitled (→ body>nav)
2 My first blog post (→ body>h1)

9
2018-02-17 10:39



独特的页面标题不应该是标题而不是网站名称吗?否则每个页面标题都是网站的名称! - Evans
@jdln:你的意思是主要内容的标题(比如“我的第一篇博文”)?在这种情况下,我认为大纲是错误的,因为站点导航(和其他站点范围的东西)通常不应该在主要内容标题的范围内。 - unor
我的意思是像新闻网站。您将有2个标题,网站名称和文章名称。例如 bbc.co.uk/news/uk-34112486 页面标题是“女王伊丽莎白二世:伊丽莎白和维多利亚的数字”,但你应该在某处也有“BBC新闻”。视觉用户可以立即看到它的BBC新闻网站,但视障用户和机器人不会知道这一点。 - Evans
@jdln:是的,在我的回答中,我认为“BBC新闻”应该是该文件的标题(即 h1),“Queen El ......”应该在它的范围内(即, h2),旁边的网站范围导航(也 h2)等。使用切片内容元素(nav, aside,...), header/footer,和 main用户代理原则上可以推断出哪个是文档中的主要内容标题。 - unor


我把它放在一个 header 元件:

标题元素通常包含节的标题   (h1-h6元素或hgroup元素),但这不是必需的。该   header元素也可以用来包装一个section的目录,   搜索表单或任何相关徽标。

喜欢这个:

<header>
  <a href="/"><img src="..." alt="Foo Company Home"></a>
</header>

4
2018-02-16 17:25



根据w3的那一部分,我会说你应该在徽标周围使用H1。 - Justin