几小时前,我读到了关于 aria-label 属性的介绍,该属性:
定义一个字符串值来标记当前元素。
但是在我看来,这正是 title
属性应该做的事情。我在 Mozilla 开发者网络 上进一步查看了一些例子和解释,但我只找到了:
<button aria-label="Close" onclick="myDialog.close()">X</button>
没有为我提供任何标签(所以我认为我误解了这个想法)。我在jsfiddle尝试了一下。
所以我的问题是:我为什么需要aria-label
,以及如何使用它?
aria-label
可以用来代替title属性中提供的工具提示。在不希望显示可见标签或工具提示的情况下,作者可以使用aria-label
设置元素的无障碍名称。请注意,这不会改变原本的意思。 - Fabrizio Calderan<h1>
上设置它不是一个好主意。大多数情况下,对于非交互元素,aria-label
会被忽略。可以在内部使用一个视觉上隐藏的span,或者更好的方法是为所有用户使用相同的描述性文本。想象一下这样的场景:一个盲人想向一个有视力的人展示某些内容,说“你看到那个带有'xxx'文本的标题吗?”有视力的人看不到它,因为它是隐藏的。aria-label
的其他问题可能是,在页面翻译时它不会被翻译,或者在盲人进行更快速的导航时无法通过Ctrl+F
搜索到。 - Hrvoje Golcic