我们正在将 WAI-ARIA 支持添加到 Web 门户网站的主导航菜单中,即此处显示的菜单:
菜单是通过经典的 <ul>
/ <li>
/ <a>
DOM 树实现的,使用 CSS 进行样式设计,使其看起来像水平选项卡。
如何实现符合 WAI-ARIA 的此类小部件?
我阅读了 w3org 最近的 WAI-ARIA 规范的许多部分,以便对其进行一般理解、分类等等。然后,我阅读了几个 UI 小部件实现的示例。我找不到任何专门针对此类 CSS 导航菜单的示例。我始终找到的最接近的小部件是菜单、菜单栏和选项卡面板。当然,我也在 Free ARIA Community group(这个问题最初发布的地方)中寻找过。
我会说,这些小部件中没有一个完全符合(CSS)导航菜单的要求。例如,TabPanel 可能会控制页面中的某些内容(--> aria-controls),可能还有 MenuBar;但我并不确定导航菜单是否控制页面中的内容(它控制下一页要显示的内容)。未深入了解之前,还有一些其他差异。 参考文献在帖子末尾。如果有更好(或更适合)的导航菜单示例,我们将很高兴了解。- https://developer.mozilla.org/en-US/docs/Accessibility/ARIA/ARIA_Test_Cases#Menubar_and_Menu
- http://wiki.jqueryui.com/w/page/38666403/Menubar
- http://www.oaa-accessibility.org/examplep/menubar2/
- http://test.cita.illinois.edu/aria/menubar/
- http://dev.aol.com/dhtml_style_guide#menu
- http://whatsock.com/modules/aria_tabs_menu_modules/demo.htm
- http://www.w3.org/TR/wai-aria-practices/#menu
- http://www.w3.org/TR/wai-aria/roles
- http://www-03.ibm.com/able/resources/wai_aria_intro.html
ul[role=menu]>li[role=presentation]>a[role=menuitem]
的例子。做得好! - Iain Fraseraria-selected
不能用于aria菜单。http://www.w3.org/TR/wai-aria/states_and_properties#aria-selected 这似乎是一个常见的错误,我不知道更好的方法来指示所选状态,除了添加一些视觉上隐藏的文本,如“活动项目”。 - Joshua Muheim