aria-label及aria-labelledby应用//////////[信息无障碍产品联盟]
aria-label及aria-labelledby应用
http://accessibilityunion.org/archives/808
aria-label属性
正常情况下,会在表单里给input组件指定对应的label,当用户tab到输入框时,读屏软件就会读出相应label里的文本。
如:<label for=”username”>用户名:</label><input type=”text” id=”username”/>
当没有给输入框设计对应的label文本的位置时,aria-label属性为组件指定内置的文本标签。它不在视觉上呈现。
如:<input type=”text” aria-label=”用户名”/>
此时,当焦点落到该输入框时,读屏软件就会读出aria-label里的内容,即“用户名”。
经测试,aria-label只有加在可被tab到的元素上,读屏才会读出其中的内容。
以下情况,也是可以读出的:<span tabindex=”0″ aria-label=”标签提示内容”>可被tab的span标签</span>
aria-labelledby属性
当想要的标签文本已在其他元素中存在时,可以将其值为该元素的id。
<div role=”form” aria-labelledby=”form-title”>
<span id=” form-title”>使用手机号码注册</span>
<form>……</form>
</div>
表单区添加了landmark标识role=”form”,在争渡中使用字母”D“键会在lankmark标识之间跳转。
当跳转到该区域时,不仅会读出”表单区“,也会读出”使用手机号码注册“。
如果一个元素同时有aria-labelledby和aria-label,读屏软件会优先读出aria-labelledby的内容。
测试软件:争渡读屏 浏览器:IE9