刚刚介绍了一些关于ARIA roles的规格。为什么ul具有aria角色menumenuitem对于li是禁止的?
我想描述一个导航栏,结合ARIA角色,使用ulli和html5的nav元素。

<!DOCTYPE html>
<html>
  <head><title>ARIA role bug?</title></head>
  <body>
    <nav role="navigation">
      <ul role="menu">
        <li role="menuitem"><a href="http://example.com/">example.com</a></li>
      </ul>
    </nav>
  </body>
</html>

在这里唠叨我:
元素li上的属性role的值menuitem错误。

最佳答案

Jukka isincorrect hereW3C validator不检查whatwg ls,而是检查W3C HTML specification。W3CHTML规范是W3C验证器一致性检查要求的权威来源。
关于根据HTML规范不允许使用menuitem,我认为这是一个错误。因此,我有filed a bug。它现在在我的bug队列中等待解决。
我还针对W3C validatorwai-aria in HTML文档提交了一个bug。
在确认器被固定之前,我建议您根据WAI-ARIA规范使用角色,并忽略确认器。
附录:
我回顾了ARIA集成到HTML的历史,没有找到任何不允许menuitem的原因,所以相信这是一个疏忽。我修复并解决了我上面提到的错误。

关于html - 为什么`ul`有ARIA角色`menu`但``menuitem`是禁止`li`?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16751643/

10-13 01:00