字体排印的克制
Emil Ruder 在《排印学》里写过一句话,大意是:排印的目的是传递信息,而非展示排印本身。这话说来简单,做起来难。
字号不是越大越有力
初学者常犯的错误是把“重要”等同于“大”。标题要大,副标题次之,正文最小——这个逻辑在视觉上直觉上说得通,但往往导致页面像一张层级分明的组织架构图,呆板而无趣。
真正有力的排版,有时候反而靠克制。正文字号调大一点,行高放开,留白给足,信息密度降下来,读者反而能沉进去。
少即是多,这句话在排版里尤其准确。删掉那些你“觉得应该有”的装饰,看看剩下的东西是否仍然成立。
字重的层级
中文排版里字重的使用远不如西文灵活。原因是中文字库的字重数量有限,细黑、常规、加粗,通常也就这三档。
在只有一两个字重的情况下,区分层级的手段只能靠:
- 字号差异:主次之间至少差 2–3px,否则肉眼难以察觉
- 颜色深浅:正文
#1a1a1a,次要信息#666,再次#999 - 间距:章节之间的留白本身就是一种视觉权重
- 斜体:西文效果好,中文斜体通常是伪斜体,要慎用
字间距
letter-spacing 在中文里的作用与西文不同。西文加字间距往往用于全大写标题,增加辨识度;中文加字间距则多用于强调“仪式感”,比如书名、标题、题辞。
正文中文几乎不应该加字间距——汉字本身已经是等宽的,加了反而显散。
行高的秘密
行高(line-height)决定了文字的呼吸感。
| 场景 | 推荐行高 |
|---|---|
| 中文正文 | 1.8 – 2.0 |
| 西文正文 | 1.5 – 1.7 |
| 标题 | 1.2 – 1.4 |
| 代码块 | 1.6 – 1.7 |
行高不是越大越好。行高过大,视线从行尾跳回行首的距离太远,读者容易跟丢。通常中文正文行高取 1.8 左右是一个安全且舒适的值。
段落与节奏
中文传统排版用首行缩进代替段落间距。这套规则在印刷时代运行良好,到了屏幕时代有些地方需要重新考量。
两种方案各有拥趸:
首行缩进(text-indent: 2em) 保留中文阅读习惯,段落之间视觉上更连贯,适合长文叙事。
段间距(margin-bottom: 1em) 更接近西文排版习惯,段落独立性更强,适合信息密集型内容。
这个博客选择了首行缩进——不是因为它“更正确”,而是这里写的东西偏向叙事,需要那种连续的流动感。
最后回到 Ruder 那句话。排版的克制,意味着每一个决定都要有理由,而不是“感觉应该这样”。当你不确定某个装饰是否必要,删掉它,看看文字是否仍然好读。通常答案是:是的,甚至更好。
