语义标记和ARIA角色,用于指示页面的主要和辅助导航

时间:2013-05-28 13:56:35

标签: html5 navigation accessibility nav wai-aria

是否有一种方法可以指示(出于辅助目的)页面上的哪个导航菜单是主要导航?

<nav role="navigation" id="primaryNavMenu">
    <ul> ... </ul>
</nav>

<nav role="navigation" id="secondaryNavMenu">
    <ul> ... </ul>
</nav>

能够做类似的事情会很好:

<nav role="navigation primary" id="primaryNavMenu">
    <ul> ... </ul>
</nav>

但我在ARIA documentation中看不到任何此类规定。

1 个答案:

答案 0 :(得分:7)

从技术上讲,没有。只有常规role="navigation"。但是,HTML5规范曾经说过nav元素:

  

只有由主导航块组成的部分才适用于nav元素。

现在说:

  

并非页面上的所有链接组都必须位于nav元素中 - 该元素主要用于由主要导航块组成的部分。特别是,页脚通常具有指向站点的各个页面的短链接列表,例如服务条款,主页和版权页面。单独的页脚元素足以满足这种情况;虽然在这种情况下可以使用nav元素,但通常是不必要的。

Reference

因此,nav元素仅适用于主导航(在您网站上的网页之间导航)和辅助导航(在当前页面上的各个部分之间导航)等内容。因此,如果您需要某些内容来识别主要导航,因为您有太多nav个元素,则您可能会错误地使用它。

当然,该规范并不是100%确定的,应该和不应该是nav元素。我建议您查看每个nav并考虑是否需要。