HTML5中是否需要“角色”属性?

时间:2018-02-15 19:29:32

标签: html5 wai-aria

为了跟上HTML5的步伐,我确保使用W3 validator tool验证我的所有标记。最近,我开始将role属性添加到元素中。但是,我已经注意到以下警告会一次又一次弹出:

  

元素button不需要button角色。

     

元素navigation不需要nav角色。

但出于同样的原因,在W3C网站上关于HTML中的ARIA,它指出button role适用于<button>元素,而navigation role仅适用于 适用于<nav>元素。

这让我想到了HTML5中角色所需的role属性吗?我有什么方法需要使用它们?

2 个答案:

答案 0 :(得分:5)

first rule of ARIA州:

  

如果您可以使用本机HTML元素[HTML51]或属性   您需要已经内置的语义和行为,而不是   重新定位元素并添加ARIA角色,州或财产   让它可以访问,然后这样做。

如果您在WAI-ARIA中查看navigation role,则会指出HTML Nav是一个相关概念,navigation=role已经是默认角色,因此无需进行设置手动自己:

  

允许的ARIA角色属性值:       导航角色(默认 - 不设置)。

因此导航角色 适用于<nav>,但默认设置已经设置好,因此您不需要自己动手。

总结您的问题,如果角色已经隐含在HTML5的语义中,请不要设置角色。您可以查看下面的网站,我认为概述了您应该/不应该使用ARIA的一些优点(它不是关于角色属性的全部内容,但它确实涵盖了这一点):<登记/> What is WAI-ARIA, what does it do for me, and what not?

答案 1 :(得分:2)

相关问题