在努力跟上HTML5时,我确保使用W3验证工具验证我的所有标记.最近,我开始将role元素添加到元素中.但是,我已经注意到以下警告弹出一次又一次:
button元素不需要这个角色button.
navigation元素不需要这个角色nav.
但在同样的道理,关于HTML ARIA W3C的网站上,它指出的button角色是适用于<button>元件和将navigation角色是仅适用于<nav>元素.
这让我role想到了HTML5角色所需的属性吗?我有什么方法需要使用它们?
如果你可以使用本地的HTML元素[HTML51]或与语义和行为,你需要已经内置属性,而不是再重新考虑的元素,并添加ARIA角色,状态或属性,使其可以访问,那么这样做.
如果您在WAI-ARIA中查看导航角色,则表明HTML Nav是一个相关概念,navigation=role并且已经是默认角色,因此无需自行手动设置:
允许的ARIA角色属性值:导航角色(默认 - 不设置).
所以导航的作用是适用于<nav>,但它已经默认设置,所以你不必自己做.
总结您的问题,不,如果它们已经隐含在HTML5的语义中,则不要设置角色.您可以查看该网站下面,我想介绍一些好点何时应该/不应该使用ARIA(这是不是所有的角色属性,但它涵盖和):
什么是WAI-ARIA,是什么它能为我做什么,不是吗?