【发布时间】:2015-05-13 23:58:23
【问题描述】:
我使用 Bootstrap 创建了一个页面,该页面具有下一页和上一页链接的标准布局。在第一页,我禁用了“上一页”链接,如下所示:
<div role="navigation">
<ul class="pager">
<li class="previous disabled" aria-disabled="true">
<a href="#">Previous page</a>
</li>
<li class="next">
<a href="search.php?page=2">Next page</a>
</li>
</ul>
</div>
屏幕阅读器(JAWS、NVDA 和 VoiceOver)似乎没有看到 aria-disabled="true" 标志,尽管 W3C WAI-ARIA spec 声明:
禁用状态适用于当前元素和所有 元素的可聚焦后代元素 应用了 aria-disabled 属性。
如果我在链接中添加aria-disabled="true":
...
<li class="previous disabled" aria-disabled="true">
<a href="#" aria-disabled="true">Previous page</a>
</li>
...
然后它按我希望的那样工作,屏幕阅读器将链接描述为“已禁用”。
我是否误解了 WAI-ARIA 规范,或者这是屏幕阅读器实现的“功能”?在his comment on 'How do i tell a screen reader that a link is disabled'、Bryan Garaventa 中提到:
... aria-disabled 的使用最适合具有 已定义的角色,例如 role=button。
aria-disabled只能应用于可聚焦元素吗?
【问题讨论】:
-
您似乎发现了实现中的错误,请向浏览器供应商报告此错误
标签: html twitter-bootstrap accessibility wai-aria screen-readers