2

有没有办法指示(出于可访问性目的)页面上的哪个导航菜单是主要导航?

<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 文档中看不到任何此类规定。

4

1 回答 1

7

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

只有包含主要导航块的部分才适用于 nav 元素。

它现在说:

并非页面上的所有链接组都需要位于 nav 元素中——该元素主要用于包含主要导航块的部分。特别是,页脚通常会包含指向站点各个页面的链接的简短列表,例如服务条款、主页和版权页面。对于这种情况,仅页脚元素就足够了;虽然在这种情况下可以使用 nav 元素,但通常没有必要。

参考

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

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

于 2013-05-30T03:05:00.820 回答