在HTML5中,我们可以在同一页上使用多个<nav>标签吗?
我读了这篇文章,但对我来说并不是完全清晰的
例如:
<header><nav>links here</nav></header>
<footer><nav>links here</nav></footer>
是的,完全可以。你可以有多个
<nav>
已经在<footer>
标签内部,那么再应用aria-label="footer navigation"
是否多余? - patricknelson是的,拥有多个<nav>
元素完全没问题。
您只需要确保为使用屏幕阅读器的人们使它们可区分。您可以通过为每个<nav>
元素使用aria-label
进行标记来实现这一点。
<nav aria-label=’primary’>
<ul>
...List on links here...
</ul>
</nav>
<nav aria-label=’secondary’>
<ul>
...List on links here...
</ul>
</nav>
或者,如果其中一个<nav>
作为可识别为标签元素的屏幕上可见文本,则可以使用aria-labelledby
,如下所示:
<nav aria-label="Site Menu">
<ul>
...List on links here...
</ul>
</nav>
<article>
<h1>Title</h1>
...
<nav aria-labelledby="id-1">
<h2 id="id-1">
Related Content
</h2>
<ul>
...List on links here...
</ul>
</nav>
</article>
您可以阅读有关使用多个导航区域的更多信息。
<nav>
标签,更多信息请查看mdn<nav>文档。<nav>
元素”。 - Ed Gibbs