笔记 · 排版
中文字体回退栈的实战排序
字体回退栈的顺序决定了「中文用什么字、西文用什么字、缺字时掉到哪」。写错了不会报错,只会在某个用户的机器上悄悄变样。
西文在前,中文在后
把西文字体放在前面,中文放后面。西文字体里没有汉字,遇到汉字自然往下掉,中西文混排时各自都能用到合适的字形。
不同平台的中文名不一样
苹果平台用苹方,Windows 上是微软雅黑,安卓和 Linux 侧常见思源黑体。这几个名字要按平台依次列全,别只写一个。
兜底必须有
最后一定以通用族收尾。前面所有具体字体都没命中时,通用族保证页面至少能正常显示文字,而不是掉进浏览器的默认衬线体。
css
font-family:
-apple-system, BlinkMacSystemFont,
'PingFang SC', 'Microsoft YaHei',
'Noto Sans SC', sans-serif;
评论6
登录后参与评论,你的发言会署上自己的名字。
许原作者@xuyuan·2026-08-07
放在最前面:看到都会回,先谢过各位补充的经验。
苏晚@suwan_dev·2026-08-09
我们也是这么做的,唯一想补充的是切片之后记得把字体文件放到带长缓存的路径上。
顾青@guqing·2026-08-10
对,缓存头配错的话每次访问都会重下,前面省下的全还回去了。
郑一鸣@yiming·2026-08-10
想问下这种切片方案在字体版本升级的时候怎么处理?全部重下还是只换变化的分片?
吴桐@wutong·2026-08-11
行高和字距那一段说得很实在,中文确实不能照搬西文那套参数。
何知白@hezhibai·2026-08-12
中文按需加载这块终于有人把量化的过程写出来了,之前看到的都只给结论。