MODULE 04 / LESSON 01

字体、字重与字体回退

建立适合中文、拉丁文字和代码的字体组合。

13 / 60 课掌握视觉语言

先理解这个概念

字体既影响气质也影响字面大小、可读性和加载性能。界面正文优先考虑稳定易读的字形,代码采用等宽字体。中英文混排要观察视觉大小与基线,不能仅凭 font-size 相同就认为协调。

字体不是只影响气质,也决定字面大小、标点位置、数字宽度与换行。相同的 font-size,换一个字体可能看起来更大,也可能让按钮多出一行。中文、英文、数字与符号通常来自不同字体,回退链因此是实际排版的一部分,而不是加载失败后的临时补救。

用程序员的语言说

字体栈像有顺序的依赖解析,目标字体不可用时要有可靠回退。

记住这三个原则

  1. 01

    从系统字体或少量经过验证的字体开始。

  2. 02

    确认所需字重真实存在,避免依赖浏览器合成。

  3. 03

    测试中文、英文、数字与符号的混排。

实际设计时,分三步做

  1. STEP 01

    选择正文与标题角色,先用真实中文、英文术语和数字排一段,不用只有几个漂亮汉字的样张作决定。

  2. STEP 02

    检查常用字重是否真的存在。缺失字重可能被合成,细节与预期不同;不要依赖极细字重承载辅助信息。

  3. STEP 03

    模拟自定义字体未加载的状态,检查回退字体的行数、按钮宽度和内容跳动;把关键布局做成可伸缩。

一个容易理解的例子

BEFORE / 常见问题

标题使用三种装饰字体,正文的中文回退到风格完全不同的字体。

AFTER / 可以这样改

正文采用系统无衬线字体栈,代码独立设置等宽栈,标题通过字重区分。

减少不必要的视觉变化和字体加载依赖。

IMPLEMENTATION NOTE
body { font-family: system-ui, "PingFang SC", "Microsoft YaHei", sans-serif; }
code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

展开看:从场景到设计决定

课程标题使用衬线字体可以表达阅读气质,导航与表单使用清晰的无衬线字体支持操作。但如果正文混入 API、JSON 和金额,仍要检查英文 x-height、数字和中文是否协调。技术代码应保留等宽关系,正文不能为了统一风格也全部改成等宽字体。字体选择最终需要在真实内容中验证,而不是只看字体名称。

适用边界与取舍

品牌字体越独特,覆盖语言、下载体积和授权成本越需要评估。系统字体能减少加载依赖,但不同平台外观不完全一致,应接受合理差异并保持结构稳定。

YOUR TURN

把这个原则用一次

先做一个小判断

为一个开发者文档页面选字体策略。

再完成一份设计练习

制作一段含中文、英文 API 名称、日期、价格与错误提示的字体样本,分别查看自定义字体和回退字体。

容易踩的坑

下载到字体文件不代表拥有商业使用或 Web 嵌入授权。

继续查阅

本课为原创教学解释。具体平台规则与标准可查阅官方资料。

Apple Human Interface GuidelinesMaterial Design 3