aria-haspopup是否要求为真/假值?

时间:2019-05-29 14:36:28

标签: html accessibility wai-aria

根据spec,该值应为布尔值。但是,spec examples of proper implementation中的一个使用不是true / false的字符串值-“ listbox”,它是另一个元素的role属性的值。这是实现示例中的缺陷,还是屏幕阅读器实际上从非true值中获取了其他信息?

链接示例中的相关代码:

<div role="combobox" aria-expanded="false" aria-owns="ex1-listbox" aria-haspopup="listbox" id="ex1-combobox">
    <input type="text" aria-autocomplete="list" aria-controls="ex1-listbox" id="ex1-input" aria-activedescendant="">
</div>

3 个答案:

答案 0 :(得分:1)

W3规格

如果w3规范指出其值可以为true或false,那么这将是浏览器将要实现的。
如果属性接受其他值,则其不确定的行为。尽可能避免这种情况。

有时,接受的属性的值将随w3规范的不同版本而变化。

答案 1 :(得分:1)

最初(WAI-ARIA 1.0),aria-haspopup只能为true / false。但是WAI-ARIA 1.1增加了附加值。您仍然可以使用true / false,但也可以更详细地说明元素将具有哪种弹出菜单(菜单,树,网格,列表框等)。

答案 2 :(得分:0)

好像我发现自己在阅读旧版规范。 This version是正确的选项,其中包含较新的选项。