【发布时间】:2023-03-31 13:47:01
【问题描述】:
编辑:
我们现在使用的是 Chrome 19,但此问题仍未修复。澄清一下:这发生在 Windows 上的 Chrome 中,而不是 Linux 或 Mac。我认为这与 Cleartype 有关。谷歌,请解决这个问题。
我一直在使用 CSS3 text-shadow 在其他浏览器上模拟 IE9 的字体平滑。基本上我只是将容器文本的文本阴影设置为容器的背景。您可以通过在低于 Chrome 14.0.833 的较大字体元素上设置 text-shadow 来查看行为。文字看起来很流畅。删除文本阴影,字体看起来参差不齐。
但是,在 Chrome 14.0.833 中(更新:似乎它在 14.0.834 中也“损坏”了)这不再有效。 text-shadow 属性仍然有效,但不像以前那样。您可以看到here 的行为(只需使用差异加载它。Chrome 版本)
似乎在较旧的 Chrome 中,文本阴影开始在文本内部一点点然后散开——这也许就是 text-shadow hack 起作用的原因。在较新的 Chrome 中,文本阴影似乎只是从文本外部开始,这就是它不起作用的原因。看看我的意思here。
我的问题基本上是:这是一个错误吗?哪个是预期的行为,如果有的话?我可以使用其他字体平滑解决方法吗?
W3C 的 spec 似乎没有说明预期的行为是什么,尽管我确实看到也许我应该使用 text-outline(有点不受支持,这违背了目的)
【问题讨论】:
-
在以前(当前)版本的 Chrome 中,我发现文本阴影非常可怕。由于您知道您将文本阴影用于 hacky 目的,因此很难判断这是错误还是有意更改。
-
顺便问一下,你指的是哪个 ClearType? Windows XP 及以上版本使用的经典版本,以及许多 WPF 应用程序和 IE9 使用的the new one。
-
新的。我会更新问题。
-
@MiG 我不想想要“忘记它”。我想要一个解决方案。 :)
-
即使CSS3Please 也显示了别名,所以我怀疑除了提供自己的字体之外,目前是否有解决方法。
标签: css windows google-chrome cleartype font-smoothing