隐藏文本背景图像对可访问性有害吗?

时间:2012-04-04 10:59:33

标签: html css accessibility

我需要为菜单显示文本图像而不是实际文本。

我在每个菜单链接中添加了一个范围。这些跨度具有设置的高度和宽度,设置为显示块,文本为减去缩进以隐藏,并且背景图像设置为我想要使用的图像。

<li>
  <a href="site.com/page1">
    <span id="menu1"> 
      Link Text
    </span>
  </a> 
</li>

这是很好的跨浏览器。当我放大和缩小页面时,它也可以正常工作。是否存在任何不明显的可访问性问题,例如屏幕阅读器?

谢谢

2 个答案:

答案 0 :(得分:4)

屏幕阅读器:对于他们的用户(盲人和一些视力不佳的人)一切都会好的,因为文字不在视口范围内,但没有隐藏display: none;visibility: hidden;所以它还在读。

High contrast mode :在Windows上,此模式隐藏背景图片并使用自定义颜色显示内容。 CSS仍然处于激活状态,因此文本在视觉上被隐藏,但背景图像已经消失:许多视力不佳的用户的菜单已经消失。

由于某种原因未选择加载图像,选择与否:只要CSS处于活动状态,与高对比度模式相同的问题。

编辑:Chris Coyer在此描述了许多技术以及正反面解释:http://css-tricks.com/css-image-replacement/ 虽然最容易访问的是当你真正想要使用的是使用alt 的HTML图像时不使用背景图像:)

答案 1 :(得分:1)

是的,因为屏幕阅读器不会读取css background,而且它对您的SEO有害。你可以做的是,在那里使用文本然后用以下内容隐藏它:

text-indent, opacity:0

!!!我不确定这是不是黑帽子SEO,因为你只是在写那些已经存在的东西!!!