aria-label及aria-labelledby应用

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

此条目发表在 技术 分类目录。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用*标注