根据HTML5.1规范,如下面的链接所述,每个页面应仅包含一个h1
元素。自然,我觉得h1
主页上的元素应该是描述网站本身的标题。这就提出了一个问题,h1
如果h1
使用主页中使用的元素,如何正确处理子页面上的标题header
?
例如,假设我们正在为Adam's Sweet Shop建立一个网站,我们创建布局并创建标题:
<header>
<h1>Adam's Sweet Shop</h1>
...[other header elements]
</header>
现在,对首页来说效果很好。但是,当我们深入研究子页面时,剩下两个选项。我们创建一个h1
描述该页面的不同元素,并将标头委派h1
到另一个标签中。这似乎可以满足HTML5.1规范的要求,但是似乎几乎是“ hacky”,另外对于模板来说,这将需要两个不同的头文件。
第二个选项是创建两个h1
元素,一个元素描述中的网站header
,另一个main
元素描述页面中的元素。
<header>
<h1>Adam's Sweet Shop</h1>
...[other header elements]
</header>
<main>
<h1>About Adam's Sweet Shop</h1>
...[other body elements]
</main>
这显然与HTML5.1规范背道而驰,但似乎不太客气。我最初使用第二种方法构建了一个站点,但收到了W3C验证程序的警告消息。
这两种方法是否正确?如果不正确,哪种方法更好?例如,描述“真实”的ARIA标签h1
?
https://www.w3.org/TR/html51/sections.html#the-h1-h2-h3-h4-h5-and-h6-elements
如果在h1
中使用header
,h1
在中使用main
,在您的网站设计中效果更好,那么这就是您应该做的。无论是规范的HTML规范,也没有它的W3C副本说你不应该使用一个以上的h1
,如果这就是满足您的需求,每个文档元素。而且W3C HTML检查器不会为问题中的标记示例报告任何错误或警告。
就可访问性而言,屏幕阅读器确实会将这两个h1
标题都报告为相同(最高)级别,但这似乎也适用于此特定情况-拥有几个顶部绝对不是一个问题。级别标题。(尽管相反,如果您在整个文档中的每个部分都用标记-则对于屏幕阅读器来说将是一个问题h1
,这就是HTML发出针对该情况的警告的原因(与您的情况截然不同)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句