1

我正在做一个带有css3字体图标的项目,并且两种不同的映射字符的方法已经浮出水面。

  1. 图标映射到常用字符,包括字母数字字符和其他基于键盘的字符。
  2. 图标映射到 unicode 的 Private User Area (U+E000..U+F8FF)

所有的事情都是平等的,我会做第一种方式。Css3 内容仅用于演示,在良好的实践中,不应用于传达意义,而且它对用户更加友好。在这种情况下,用户是前端开发人员,他们原本需要在样式表中处理十六进制代码,而他们可以使用键盘字符。

我看到的使用私有用户区的一个论点是确保屏幕阅读器不会读出 css 定义的内容。这听起来很合理,但我想不出为什么屏幕阅读器会做这样的事情。根据定义,与 content 属性一起使用的 :before 和 :after 伪元素不是 DOM 的一部分。

我看过这个视频,它表明我的假设在三种情况下是正确的:Dan Tamas 提交的 Youtube 视频,使用 css content 属性测试屏幕阅读器

是否有任何屏幕阅读器出现错误并开始向用户读出 css 内容的示例?这甚至会发生吗?

4

1 回答 1

4

罗杰约翰逊在 2012-05 年写道:

[...] 几个屏幕阅读器会朗读以这种方式创建的内容。VoiceOver 可以(在 OS X 和 iOS 中)。NVDA 在与 Firefox 一起使用时会这样做,但与 IE 不一样。

相关链接:

于 2012-10-13T01:52:32.847 回答