过度使用<h1>是不好的,但是现在使用HTML5?


22

我们知道,过度使用<h1>可能会导致过度优化,但是现在,在HTML5中,允许<h1>在同一页面(嵌套部分内部)使用多个。

Google将<h1>只处理包含标题的页面怎么办?


我不知道Google会做什么,但是我希望有一天它会惩罚他们,并在他们的余生中将他们送入地狱!HTML5带给我们所有美丽的东西,我真的很难理解人们为什么需要<h1>在代码中膨胀使用嵌套标签。问问自己:“ <title>我的页面中是否有多个标签?” 答案是否定的,为什么我需要<h1>在页面中添加多个标签?
Marco Demaio


1
@MarcoDemaio,H1标签与TITLE标签不同。创建HTML5概述算法以及HTML5引入的几乎每个sectioning元素都是为了解决单个页面可能包含多个文章的概念。当一页包含一篇文章(如Wikipedia上的大多数页面)时,仅使用H1-H6是有意义的。如果您开始在页面上显示多个文章预告片,那么如果您仅依靠H1-H6标签来构造内容,就会陷入混乱。
第三方

@thirdender:恕我直言,如果您显示一个包含多个关节的页面,则可以用它<h1>包装页面的真实名称“谈论……的文章”,而文章标题可以被包装成<h2>,我仍然看不到为什么必须<h1>在页面中使用多个时间。
Marco Demaio 2014年

1
@MarcoDemaio,是的,可以那样做,但是那样您就不会利用HTML5的sectioning元素来充分利用它们。参见Smashing Magazine:结构语义学-HTML5截面元素的重要性。他确实弥补了历史文档概述机制的缺点,以及如何通过新的HTML5分段元素解决这些缺点。这些使程序员的生活变得更轻松,从而使程序员受益;通过有意义的方式标准化提纲实践,从而使屏幕阅读器的用户受益。
第三方2014年

Answers:


14

根据Matt Cutts的说法,Google不会仅仅因为拥有多个<h1>标签而对网站进行惩罚。他们的索引器有可能被编程为检测严重的过度使用(<h1>例如,将所有文本都包含在<h1>标记中)并对这些页面进行惩罚,但是我没有看到直接的证实。这极有可能是他们的人的员工,如果惊动到这样一个页面,会看到它作为滥用和采取相应的行动。

我不在Google工作,也不知道他们的算法实际上是如何工作的(超出了从真正认识的人的观察和发布中可以得出的结论),但是如果要编写他们的标题处理代码,我会分配每页一定数量的“标题权重”,然后将该权重按比例分配给页面上的所有标题。这样,拥有两个<h1>标签将具有与仅包含一个长标签完全相同的效果,例如,仅使用<h3>页面上的标签将具有与仅使用标签完全相同的效果<h1>。它是这样一个显而易见的解决方案,我想如果谷歌没有做是相当惊讶的东西或多或少这样。


1
Asker并未确切提及所指的内容,但值得注意的是,Ilmari链接的视频来自2009年。此更新专门针对过分优化的罚款(最终命名为Penguin)仅在大约一周前推出。
Su

8

通常公认的最佳做法是<h1>,一个页面上只有<h1>一个,HTML5的一个部分中只有一个。Google不会因符合HTML标准而对您造成惩罚,也不会因具有多个导致您受到惩罚<h1>-尽管可能会只有ON 受到惩罚<h1>

重要的一点是,内容的需求和用户的需求-无论他们是否看到,都应该坚持这一天。

Google的Johnathan Mueller在这里确认Google可以为HTML 5编制索引,并且它没有做任何特别的事情,即奖励您使用HTML 5。

目前,我们的爬网和索引系统对HTML5并没有做任何特别的事情,因此使用HTML5构造没有任何“好处”,但是类似地,通常也没有不利之处。就是说,我见过的大多数带有HTML5标记的页面都非常干净-几乎没有“残缺”和不必要的元素。虽然没有清晰的标记并不是我们的算法明确寻找的东西,但我们偶尔会看到几乎无法解析的页面。同样,干净的标记使网站维护更加容易,更容易添加微格式等新元素,并经常使页面在各种浏览器和设备上更易于移植。因此,考虑到这一点,从HTML5创建令人敬畏的网站(从搜索的角度来看)并没有使您退缩:)。


证明你在说什么。证明Google可以理解今天的html5 ...将来肯定会。但今天?
skyline26 2012年

1
来自matt cutts的博客:过多的H1标签–现在一起使用:H1用于标题;其余为H2和H3。每个文章或页面只应有一个H1标题。
skyline26 2012年

@toPeerOrNotToPeer是的,确切地说。按照标准,你不会有任何问题,但谷歌不惩罚多个H1,它并了解HTML 5
toomanyairmiles

单H1限制从未如此。
Su

@Su'不在规格范围内,不。虽然这是普遍接受的做法-但我确实夸大了此案。
toomanyairmiles 2012年

3

每个人都总是指向2009年的Matt Cutts帖子。是2011年实时网络摄像头聊天中的一段视频,其中Matt Cutts特别声明了他偏爱<h1>每页一个标签。


欢迎光临本站!那是一个信息丰富的链接-您可以扩大答案以更好地解决这个问题吗?否则,您的答案更接近评论。谢谢!
dan

3

它始终被允许<h1>在文档中使用多个,并且从未被任意惩罚。做的是什么可以让本身就是一个问题。

对于Google而言,您只需要相信工程师在做他们的工作,并且如果他们正确地对HTML5编制索引,Googlebot就会知道嵌套<h1>已被有效地“降低”了一个层次。如果您不信任它,那么就不要这样做,而要手动进行操作,<h2>直到获得清晰,直接的答案。(在@toomanyairmiles响应中指向Johnathan Mueller帖子的链接很有趣,但对我来说还不够完整。)我还没有看到这种情况。


1

我认为这个问题基于逻辑,即<h1>标记代表页面的一个主要标题。尽管前几天可能确实如此,但HTML5改变了这种逻辑。在HTML5中,<h1>标记是部分的主要标题。这可以是整页,子页,模块等。为什么这样的差异如此重要的一个很好的例子是在构建一个由不同部分组成的模块化系统时,它们分别用于不同的活动。

想象一个系统,其中多个“页面”彼此并排排列。每个页面都有不同的用途:一个用于天气,一个用于组织任务,一个用于显示客户,等等。这些页面中的每个页面都可以进一步细分(按小时预测,单个任务,单个客户),并且这些“子页面”可以在视觉上与实际页面并排放置。

在HTML5之前,您需要从逻辑上确定哪个标头标记是合适的,并且,如果深度超过6层,则会用完标头标记。使用HTML5,您可以将它们全部设置为<h1>没有额外的逻辑或嵌套限制。


但是他问“谷歌是否会处理页面...”。您想像中的系统看起来更像是Web应用程序界面,而不是Webiste。通常,Web应用程序应该保留在登录名后,因此Google根本无法对其进行爬网。
Marco Demaio 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.