疑难问题
小于 1 分钟
疑难问题
1. 在div进行css3动画时(translate,scale)容易发生字体变模糊的情况
解答
原因:
transform变换会在浏览器上单独创建一个绘画层并重新进行渲染,
由于图层渲染的时候也处理了周围的文字,
如果高度为奇数的文字可能会存在半个像素的计算量,
浏览器对这半个像素会进行优化渲染,所以边缘会出现模糊的情况。
情形:
// 奇数像素可能导致浏览器渲染失真
1. 字体size为奇数导致,如font-size: 13px;
处理方案:改为偶数
// transform移动后可能导致浏览器渲染失真
2. transform导致(使用transform的盒子为奇数)
处理方案:在模糊字体一级级往外找,在使用了transform的位置,把使用transform的盒子宽高改为奇数
3. 告诉浏览器如何渲染:
// 浏览器强调渲染速度和几何精度的易读性。这会启用字距调整和可选的连字。
text-rendering: optimizeLegibility;