【发布时间】:2012-08-22 15:32:16
【问题描述】:
我使用网络字体在网站上显示一些图标。这太棒了,因为它们可以缩放,如果我愿意,我可以打印它们……但问题是盲人将它们视为普通字母或字符。以下示例返回一个不错的图标 + 文本。
<span>i</span> Info
<span>t</span> Contact
etc...
盲人只会阅读:iInfo、tContact 等...
是否可以通过 CSS 仅针对盲文和屏幕阅读器?
我在 w3 网站上找到了这个,但我不确定这个作品是否真实存在: http://www.w3.org/TR/CSS2/media.html#media-types
有人有这方面的经验吗?
-----更新-----
:before & :after -> 一些屏幕阅读器(例如 MacOS 的 VoiceOver)会大声朗读“内容”部分。我自己测试过。
@media braille, speech -> 接缝不会对 VoiceOver 产生影响。它读取屏幕上可见的内容(使用 safari 和 chrome 测试)
speak: none; -> 对 VoiceOver 或 NVDA (https://twitter.com/#!/jcsteh/status/143848614979055616) 完全没有影响
【问题讨论】:
-
如果您不需要旧的 IE 支持,您可以将这些跨度换成
:before伪元素。 -
@BoltClock 不幸的是我这样做了:/ 你确定 :before 不会被屏幕阅读器解释吗?
-
是的,因为它是一个视觉元素,不参与内容。
-
@BoltClock 好的,我会测试一下,谢谢。但我仍然需要一个适用于 ie6 和 7 的解决方案... :(
-
不要赌:before/:after:虽然它们不会作为内容出现在DOM中,但它们对有视力的最终用户是可见的,因此屏幕阅读器会尝试获取该内容 -如果不是在当前版本中,那么在将来。与有视力的用户平等是这里的关键问题。
标签: html css accessibility