有两种方法可以在这里添加一些内容。
第一种方法是使用img
元素以及适当的alt
属性值,例如,
<a href="path/to/shopping/cart" >
<img src="url/source.jpg" alt="View 3 items in your shopping card" />
</a>
第二种方法是将一些文本添加到i
元素和明显隐藏它:
<a href="path/to/shopping/cart">
<i class="fa fa-shopping-cart" aria-hidden="true">
<span class="sr-only">
View 3 items in your shopping cart
</span>
</i>
</a>
的.sr-only
类添加到您的样式表:
.sr-only {
height: 1px;
width: 1px;
clip: rect(1px, 1px, 1px, 1px);
overflow: hidden;
position: absolute;
}
第二种方法将允许更长的字符串,如果需要的话。它还可以防止在某些浏览器(Firefox,内存)上出现一些问题,如果文本在屏幕外对齐并且是链接的一部分,则用户在链接上标签会将焦点延伸到文本所在的位置,这会导致很长的,在屏幕上的薄盒子。
.sr-only
通过使内容成为一个小的1px框然后剪切出来,并将健壮性定位在页面上。它受到所有现代浏览器的支持,并且只需要一个额外的剪辑规则,适用于不喜欢标准语法(clip: rect(1px 1px 1px 1px)
)的较旧版本的IE。更多信息可以在Yahoo's developer blog找到。
至于哪一个是个人喜好的问题。如果使用图标集,我会去.sr-only
向页面添加有意义的文本。如果您想使用img
元素,则需要确保在内容更新时内容作者写入了有意义的内容,而不是描述图像的外观。
相关:[HTML可访问性,是否允许使用空元素?](http://stackoverflow.com/q/32812349/1591669) – unor