如何让 Chrome 支持小于 12px 的文字?
1. Zoom(非标属性)
有兼容问题,缩放会改变元素占据的空间大小,触发重排。
2. -webkit-transform: scale()
大部分现代浏览器支持,并且对英文、数字、中文都能够生效,缩放不会改变元素占据的空间大小,页面布局不会发生变化。
注意的是,使用 scale 属性只对可以定义宽高的元素生效,所以下面代码中将 span 元素转为行内块元素:
.small-font {
display: inline-block;
-webkit-transform: scale(0.5);
transform: scale(0.5);
}
补充:
- 用
transform: scale()缩放后,元素的视觉尺寸变小但 布局尺寸没变,所以可能出现"留白"和"文字截断"。可以配合transform-origin: left center配合负 margin 调整位置。- 现在 Chrome 27+ 起
-webkit-text-size-adjust已不再支持缩小字号(仅 Android Chrome 仍生效),所以小字号普遍只能走transform或 SVG。- 若只关心 Chrome,可以直接设置
font-size: 1px配合transform: scale(0.0833);更现代的方案是用 SVG 文本或图片,避免浏览器最小字号限制。



