CSS tranform属性导致文字模糊

378 阅读1分钟

transform 变换会在浏览器上单独创建一个绘画层并重新进行渲染,如果变换的属性是小数的话,边缘会出现模糊的情况

一般偏移量使用相对单位会无意中出现这种情况,比如元素高度为奇数,50%便是小数

.item {
    height: 133px;
    transform: translateY(-50%);
}

解决方案:

如果元素宽高可以确定

  1. 使用整数绝对单位(px)作为偏移量
  2. 将元素宽高改为偶数

如果元素宽高不确定

​ 使用其他方案达成该效果,如让元素水平垂直居中就可以使用 flex 布局来实现