我有一个侧边栏,其中包含应用程序的主要导航。它还包含一个button
,它会触发侧栏的打开/关闭。就语义而言,标记应如何显示?
nav
中,包括打开/关闭触发器section
中,其中包含nav
,但不包括
打开/关闭触发器?section
或aside
,但只有nav
(不包括触发器),在这种情况下,我仍然遵循以下最佳做法。触发器应被视为内容吗?还是应该属于网页概述的一部分?[W3] [1]建议:
最佳做法是将页面上的所有内容包括在地标中, 以便依靠它们的屏幕阅读器用户从部分导航 到部分不会丢失内容的踪迹。
当前结构类似于:
侧边栏
答案 0 :(得分:0)
<aside>
元素用于与页面的主要内容进行切线相关的内容,并且通常在视觉上表示为侧边栏。使用它进行导航不会完全与屏幕阅读器混淆,但是在这种情况下,您必须向其中添加role
或complementary
的{{1}}。
我希望这个region
可以将至少几个不同的<aside>
元素进行分组,因此对于您使用单个菜单的用例,我肯定会选择将侧边栏菜单区域<nav>
。记得顺便给它一个不错的<nav>
。像aria-label
之类的内容就足以满足您的主要导航需求。
请考虑使用aria-label=“Primary”
隐藏屏幕阅读器的切换按钮,如果切换没有帮助的话。在这种情况下,aria-hidden=“true”
绝不能用<nav>
隐藏,因为它会使屏幕阅读器看不见并且无法切换。
display: none