何时使用必需属性与输入元素的aria-required属性?

问题描述 投票:15回答:2

我正在尝试使表格可访问。我应该让我的输入同时具有requiredaria-required属性,还是只有一个?

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

或者像这样?

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

或者像这样?

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

文章Accessible HTML5 Forms – Required Inputs声称最好实施两者。

html5 accessibility required wai-aria html-input
2个回答
29
投票

当John Foliot在2012年写这篇文章时,这是非常真实的。你需要两个。

今天不再是这样了。我可以举个例子,把它放到in a CodePen,并在JAWS和NVDA中检查(抱歉,今天没有VoiceOver):

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

您将很高兴知道NVDA和JAWS都会根据需要宣布该领域。

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

您可以从2015年开始阅读Steve Faulkner(ARIA规范的编辑之一)本文中您可以转储的ARIA属性:http://html5doctor.com/on-html-belts-and-aria-braces/


2
投票

HTML5现在具有必需属性,但是aria-required对于尚不支持HTML5的用户代理仍然有用。

参考:Using the aria required attribute post on MDN

© www.soinside.com 2019 - 2024. All rights reserved.