在关键帧动画中为“转换”设置动画时,仅在 Chrome(Windows 和 Mac)中发生模糊。对我来说,-webkit-optimize-contrast 设置只是部分帮助。为了获得最佳效果,我还必须对 scaleX 使用“魔术值”(略大于 1 而不是 1)。
这是有效的代码:
img {
image-rendering: -webkit-optimize-contrast;
}
@keyframes scale-in-left {
0% {
transform: scaleX(0);
opacity: 0;
}
100% {
transform: scaleX(1.000001);
opacity: 1;
}
}
这是不起作用的代码(导致 Chrome 中的图像模糊):
@keyframes scale-in-left {
0% {
transform: scaleX(0);
opacity: 0;
}
100% {
transform: scaleX(1);
opacity: 1;
}
}
最后,“工作”代码消除了大部分模糊,但不是全部。Safari和Firefox在没有任何特殊设置的情况下仍然更清晰。
另请注意,仅调整浏览器窗口的大小就可以清除不需要的模糊,这表明可能是某些原因导致 Chrome 无法执行最终渲染过程 (?)。