我有以下代码(从这里 https://www.w3.org/WAI/tutorials/menus/examples/appmenu/):
<div role="menubar">
<ul role="menu" aria-label="functions" id="appmenu">
<li role="menuitem" aria-haspopup="true" tabindex="0" aria-expanded="false">
File
<ul role="menu">
<li role="menuitem" tabindex="-1">New</li>
<li role="menuitem" tabindex="-1">Open</li>
<li role="menuitem" tabindex="-1">Print</li>
</ul>
</li>
<li role="menuitem" aria-haspopup="true" tabindex="-1" aria-expanded="false">
Edit
<ul role="menu">
<li role="menuitem" tabindex="-1">Undo</li>
<li role="menuitem" tabindex="-1">Redo</li>
<li role="menuitem" tabindex="-1">Cut</li>
<li role="menuitem" tabindex="-1">Copy</li>
<li role="menuitem" tabindex="-1">Paste</li>
</ul>
</li>
<li role="menuitem" aria-haspopup="true" tabindex="-1" aria-expanded="false">
Format
<ul role="menu">
<li role="menuitem" tabindex="-1">Font</li>
<li role="menuitem" tabindex="-1">Text</li>
</ul>
</li>
<li role="menuitem" aria-haspopup="true" tabindex="-1" aria-expanded="false">
View
<ul role="menu">
<li role="menuitem" tabindex="-1">100%</li>
<li role="menuitem" tabindex="-1">Zoom In</li>
<li role="menuitem" tabindex="-1">Zoom Out</li>
</ul>
</li>
<li role="menuitem" tabindex="-1" aria-expanded="false">Help</li>
</ul>
</div>
但是,当我尝试验证(通过 W3C 验证器 https://validator.w3.org/nu/#textarea)该 HTML 片段给出了错误:
属性aria-expanded
元素上不允许li
在此刻。
由于这是一个官方的 W3C 示例,我有点困惑,因为他们自己的示例没有使用自己的验证器进行验证。这是怎么回事?
这里是 W3C HTML 检查器(验证器)的维护者。我认为检查器的行为符合预期,因为aria-expanded
with role=menuitem
ARIA 规范不允许 https://www.w3.org/TR/wai-aria-1.1/#menuitem.
至于为什么https://www.w3.org/WAI/tutorials/menus/examples/appmenu/ https://www.w3.org/WAI/tutorials/menus/examples/appmenu/具有无效的标记,根据我的经验,有许多无效的示例。不过,与 ARIA 规范和其他规范一样,这里没有任何内容是官方/权威的,因此,当您发现类似的示例与 ARIA 规范要求不符时,您应该在以下位置报告:https://github.com/w3c/wai-tutorials/issues https://github.com/w3c/wai-tutorials/issues以便可以修复该示例。
根据我的经验,如果人们花时间报告这些教程中的错误,他们很快就会得到修复。
2017-07-09 更新:另请参阅答案关于在“role=menuitem”上使用“aria-expanded” https://stackoverflow.com/questions/44990967/about-use-aria-expanded-on-role-menuitem/44991285#44991285并看到https://github.com/w3c/aria/issues/454 https://github.com/w3c/aria/issues/454 “ARIA 1.1:menitem 角色不支持 aria-expanded”在 ARIA 工作组的 ARIA 规范问题跟踪器中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)