CSS 属性 "will-change" 更改字体颜色(亚像素字体渲染)
CSS property "will-change" changes font color (subpixel font rendering)
我用的是Bootstrap4。但是打开下拉组件时,字体颜色略有变化。
在寻找一些可能是问题的颜色定义(没有)之后,我发现了一些奇怪的东西:当我禁用 transform
和 will-change
属性 时下拉元素,字体颜色会以某种方式受到影响。在这里看视频:
https://www.dropbox.com/s/xkhl4m6enwvdzcd/Video%20color%20bug.mov?dl=0
它在 Google Chrome 和影院显示(视频)中最为明显。
亚像素字体渲染似乎也受到影响: see screenshot here。
有趣的是:字体颜色在关闭时呈现得更准确。
在 Safari 中也会出现字体渲染问题...
知道这里发生了什么吗?
(我可以post一个代码笔,或者在视频中看到它的id。)
与 Ilya Streltsyn and giovannipds have mentioned in the comments and 一样,这是 alpha 合成(子像素渲染)的正常副作用,这是浏览器作为 will-change
带来的硬件加速渲染 (GPU) 的一部分所做的,并且transform
.
我用的是Bootstrap4。但是打开下拉组件时,字体颜色略有变化。
在寻找一些可能是问题的颜色定义(没有)之后,我发现了一些奇怪的东西:当我禁用 transform
和 will-change
属性 时下拉元素,字体颜色会以某种方式受到影响。在这里看视频:
https://www.dropbox.com/s/xkhl4m6enwvdzcd/Video%20color%20bug.mov?dl=0
它在 Google Chrome 和影院显示(视频)中最为明显。
亚像素字体渲染似乎也受到影响: see screenshot here。 有趣的是:字体颜色在关闭时呈现得更准确。
在 Safari 中也会出现字体渲染问题...
知道这里发生了什么吗?
(我可以post一个代码笔,或者在视频中看到它的id。)
与 Ilya Streltsyn and giovannipds have mentioned in the comments will-change
带来的硬件加速渲染 (GPU) 的一部分所做的,并且transform
.