a[role=option]
<div role="listbox">
<a role="option">orange</a>
<a role="option">purple</a>
</div>
错误:元素上的
option
属性值错误。role
a
button[role=option]
<div role="listbox">
<button role="option">orange</button>
<button role="option">purple</button>
</div>
错误:元素上的
option
属性值错误。role
button
span[role=option]
<div role="listbox">
<span role="option">orange</span>
<span role="option">purple</span>
</div>
验证跨度还可以。根据listbox
文档,我认为a[role=option]
或button[role=option]
将是有效的,但是两者都给出了验证错误。它们是明智的语义回退...为什么它们无效?
既不a
也button
不允许role="option"
。这是设计使然。有一个方便的表格,概述了在哪些元素上允许使用哪些角色(因此noa
和nobutton
)。
但是,我建议您不要这样做。除非您准备完全模仿a的所有功能select
(例如,所有键盘交互)。一些问题和例子是在MDN其中包括一些额外的角色和职能必须落实到位。ARIA被创建为桥梁技术,而不是替代本机控件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句