html - 何时对 HTML 元素使用 disabled 属性与 aria-disabled 属性?

标签 html accessibility wai-aria html-input

我正在尝试使表单易于访问。我应该让我的输入同时具有 disabledaria-disabled 属性,还是只有一个?

<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" disabled>

还是这样?

<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" aria-disabled="true">

还是这样?

<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" aria-disabled="true" disabled>

最佳答案

我可以举你的例子,把它写成in a CodePen ,并在 JAWS 和 NVDA 中查看(抱歉,今天没有 VoiceOver):

<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" disabled>

您会很高兴知道 NVDA 和 JAWS 都跳过了该字段(或者如果明确聚焦,则宣布该字段已禁用)。

简而言之,您不再需要aria-disabled。只需使用 disabled

您可以在 Steve Faulkner(ARIA 规范的编辑之一)于 2015 年撰写的这篇文章中阅读更多关于可以转储的 ARIA 属性的信息(尽管未明确列出 aria-disabled ,概念相同):http://html5doctor.com/on-html-belts-and-aria-braces/

如果我的答案类似于 your other question关于 requiredaria-required,这是因为它们本质上是相同的答案。

关于html - 何时对 HTML 元素使用 disabled 属性与 aria-disabled 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38059140/

相关文章:

javascript - 如果不存在合适的 ARIA 属性,我是否应该使用自定义 ARIA 属性?

jquery - 在包含 + 或 - 的表中更改 td 的颜色

javascript - 中午 12 点范围 slider 后的 noUISlider 时间

Android 通过点击 ActionBar 按钮触发自定义辅助功能事件

html - 使用 ARIA 角色 ="none"从辅助功能树中删除项目

jquery - 向 jQuery .toggle() 方法添加 WAI-ARIA 支持

javascript - 如果存在javascript,如何添加输入并删除它

html - 当视口(viewport)宽度低于 225px 时网格单元突出

javascript - 通过选项卡选择单选按钮

javascript - TalkBack 屏幕阅读问题