多个<nav>标签</nav>

时间:2011-01-13 03:00:12

标签: html5

我们可以在html5的同一页面上使用多个标签吗?

我在Zeldman.com上看过this文章,但对我来说并不完全清楚

<header><nav>links here</nav></header>

<footer><nav>links here</nav></footer>

3 个答案:

答案 0 :(得分:128)

是的,绝对的。您可以将多个headernavfooter标记视为不受惩罚。

只要您确保在语义上使用标记并且不将它们放在无效的位置(它们是块级元素,因此您不能将它们放在内联元素中,例如)那么你不应该太担心粘贴者说的话。很容易陷入争论微小的细节而不是向前推进你的项目。

答案 1 :(得分:2)

答案是肯定的。您可以在页脚中添加<nav>标记,以获取更多信息,然后查看mdn <nav> documentation

答案 2 :(得分:1)

是的,绝对可以有多个<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>

您可以阅读有关使用Multiple Navigation Landmarks的更多信息。