我在输入提示上有一个包含aria-describedby
属性的表单,后跟一个span
标记,其中包含所需输入的描述/示例。它还有一个类只显示屏幕阅读器(有视力的人可以使用placeholder
信息)。
这里的问题是,至少根据Fangs的说法,屏幕阅读器读取标签,然后提示输入,然后读取aria-describedby
文本。
我可以在代码中的输入上方移动文本,例如
<label for="givenName">Given name</label>
<span id="givenNameHelp" class="help-block sr-only">e.g. Liam</span>
<input class="form-control" type="text" id="givenName" placeholder="Liam" aria-describedby="givenNameHelp">
答案 0 :(得分:1)
如果您已经在输入中添加了HTML标签,则根本不需要使用ARIA属性。您可以安全地删除aria-describedby,并嵌套span内容。例如:
<label for="givenName">Given name
<span id="givenNameHelp" class="help-block sr-only">e.g. Liam</span>
</label>
<input class="form-control" type="text" id="givenName" placeholder="Liam">
希望它有所帮助! 作为一般规则..首先尝试使用标准HTML制作可访问的内容。然后,使用ARIA来描述网站部分,小部件和交互行为(如菜单,标签,弹出窗口,消息,下拉菜单,日历等),还可以描述您不能使用HTML做什么。