字体使用说明
按内容的用途选择文字样式,再搭配颜色。
英文与数字 · Geist Mono
中英文页面的标题、正文、导航、日期、标签和代码,英文与数字统一使用 Geist Mono。
字体随网站加载。常规字重为 400,强调使用 500;字体不可用时依次回退到 SFMono-Regular、Consolas 和可用的系统字体。
Geist Mono · Reading, navigation & code · 0123456789
中文 · 系统黑体
中文使用设备已有的无衬线字体:优先苹方 SC,其后为 Hiragino Sans GB、微软雅黑和 Noto Sans CJK SC。实际字体取决于设备,不额外下载中文字体。
全站文字角色共用 --font-reading 字体栈。
混排示例:杨攀 Pan YANG · 2026 · Geist Mono 与系统黑体。
层级与搭配
- 页面标题:
type-title;章节标题:type-heading。 - 文章、作品与链接条目标题统一使用
type-entry-title。 - 正文、开篇介绍和描述共用
type-body;整篇文章使用type-prose容器。 - 导航、按钮和控件:
type-ui;辅助文字:type-meta;主要视图切换:type-view-switch。
每个元素使用一个 type-* 文字角色,搭配text-* 颜色 class。
颜色通过 text-* 组合:text-muted 用于辅助信息,text-accent 用于强调。调色盘中的文字色与色块色分别适配,分类或状态同时保留文字说明。
<h2 class="type-heading">章节标题</h2>
<p class="type-body text-muted">辅助说明</p>
<p class="type-body text-green">已完成 / Complete</p>
<article class="type-prose">…</article>字号与显示
字号使用 rem,跟随浏览器的字号偏好。章节标题与首页开场介绍共用 1.5625rem 字号和 1.5 倍行高。页面标题在窄屏自动缩小;示例下方展示当前计算出的字号、行高和颜色。
标题
.type-title页面标题
把想法写下来,让作品说话。
Make room for thoughtful work.
Aa Bb Cc · 0123456789 · @ & / —
.type-heading章节标题
把想法写下来,让作品说话。
Make room for thoughtful work.
Aa Bb Cc · 0123456789 · @ & / —
.type-entry-title文章、作品与链接条目标题
把想法写下来,让作品说话。
Make room for thoughtful work.
Aa Bb Cc · 0123456789 · @ & / —
阅读文字
.type-body正文、介绍与描述
把想法写下来,让作品说话。
Make room for thoughtful work.
Aa Bb Cc · 0123456789 · @ & / —
界面与元信息
.type-ui导航、按钮与表单控件
把想法写下来,让作品说话。
Make room for thoughtful work.
Aa Bb Cc · 0123456789 · @ & / —
.type-meta日期、标签、注释与版权
.type-view-switch主要视图切换
把想法写下来,让作品说话。
Make room for thoughtful work.
Aa Bb Cc · 0123456789 · @ & / —
正文组合
.type-prose阅读与节奏 · Reading
留白让句子有呼吸的空间。正文中的 重点内容、轻声强调、强调中的重点 和 删除的文字 各有用途;行内链接与引用式链接保持同样的表达。
Good typography gives words room to breathe. The rhythm of a paragraph comes from its measure, spacing, and contrast — quiet details that keep the meaning in focus.
显式换行保留在同一段落中。
A deliberate line break stays in the same paragraph.
三级标题 · A subsection
段落是阅读的基本单位;标题表达内容之间的关系。
四级标题 · A smaller group
更深的层级复用条目标题的字号,以字重区分。
五级标题 · A detail
以斜体补充区分,保持字号数量克制。
六级标题 · A finer detail
结构仍然保留,字重与斜体共同表达层级。
列表 · Lists
- 无序列表 / Unordered list
- 嵌套项目 / Nested item
- 另一项包含 强调 和
inline code
- 第二个顶层项目 / Another item
- 先阅读 / Read first
- 关注内容 / Follow the content
- 留意节奏 / Notice the rhythm
- 再记录 / Then take notes
- 已完成的示例 / Complete
- 待完成的示例 / Pending
引用 · Quotations
少一点干扰,多一点内容。
A quiet page leaves room for the reader.
嵌套引用 / A quotation within a quotation.
代码 · Code
行内代码 const message = 'Hello, world'; 沿用等宽字体。
const page = {
title: '阅读与节奏 · Reading',
language: 'zh-Hans',
canonical: 'https://yangpan.com/design-system',
};
console.log(page.title);
表格 · Tables
| 元素 / Element | 用途 / Purpose | 对齐 / Alignment | 示例 / Sample |
|---|---|---|---|
| 标题 Heading | 表达内容层级 | 居中 Center | 01 |
| 正文 Body | 中英文混排与连续阅读 | 居中 Center | 02 |
| 代码 Code | const readable = true |
居中 Center | 03 |
图片 · Images
图片说明:形状、留白与阅读方向。 / Shapes, whitespace, and reading direction.
分隔线之后继续正文。脚注将补充信息放在文章末尾。1
Footnotes
-
这是一条脚注示例。A footnote keeps supporting information close, with a link back to the text. ↩
颜色
每种颜色同时提供 HEX、RGB 和 HSL 表示。HSL 的三个数值依次是色相(0–360°)、饱和度(0–100%)和明度(0–100%);饱和度越低越接近灰色。两套示例各自显示对应主题的数值,HSL 保留一位小数。
亮色
标准蓝色阶
同一色相与饱和度,按明度分档。色阶名称中的数字表示 HSL 明度百分比;色阶本身不随主题改变。
查看色阶名称与色值
--blue-40--blue-45--blue-50--blue-55--blue-60--blue-65蓝色的用途
链接在暗色背景上使用更亮的一档;主按钮在两套主题中都使用蓝底近白字。
链接文字
--link主按钮背景
--action-background主按钮悬停
--action-background-hover主按钮按下
--action-background-active主题色板
--background页面背景
--surface控件与表面
--text主要文字
--muted辅助文字
--accent链接与强调
--divider装饰分隔线
调色盘
所有颜色的饱和度统一为 68%。浅色主题的黄色色块明度为 55%,其他色块为 50%,文字按 5% 档位调整;深色主题的红、橙使用 55%,黄、绿、青、蓝使用 60%,紫、粉使用 65%。柔和背景与强调背景在亮色模式使用 90% / 85% 明度,在暗色模式使用 10% / 15% 明度,配合主要文字色使用。同一颜色共用色相。HSL 显示定义值,HEX 与 RGB 显示浏览器计算值。
--color-red-surface--color-red-surface-strong红
--color-red--color-red-text.text-red--color-orange-surface--color-orange-surface-strong橙
--color-orange--color-orange-text.text-orange--color-yellow-surface--color-yellow-surface-strong黄
--color-yellow--color-yellow-text.text-yellow--color-green-surface--color-green-surface-strong绿
--color-green--color-green-text.text-green--color-teal-surface--color-teal-surface-strong青
--color-teal--color-teal-text.text-teal--color-blue-surface--color-blue-surface-strong蓝
--color-blue--color-blue-text.text-blue--color-purple-surface--color-purple-surface-strong紫
--color-purple--color-purple-text.text-purple--color-pink-surface--color-pink-surface-strong粉
--color-pink--color-pink-text.text-pink文字颜色
.text-primary
主要文字
The quick brown fox.
.text-muted
辅助文字
The quick brown fox.
.text-accent
强调文字
The quick brown fox.
.text-inverse
反色文字
The quick brown fox.
暗色
标准蓝色阶
同一色相与饱和度,按明度分档。色阶名称中的数字表示 HSL 明度百分比;色阶本身不随主题改变。
查看色阶名称与色值
--blue-40--blue-45--blue-50--blue-55--blue-60--blue-65蓝色的用途
链接在暗色背景上使用更亮的一档;主按钮在两套主题中都使用蓝底近白字。
链接文字
--link主按钮背景
--action-background主按钮悬停
--action-background-hover主按钮按下
--action-background-active主题色板
--background页面背景
--surface控件与表面
--text主要文字
--muted辅助文字
--accent链接与强调
--divider装饰分隔线
调色盘
所有颜色的饱和度统一为 68%。浅色主题的黄色色块明度为 55%,其他色块为 50%,文字按 5% 档位调整;深色主题的红、橙使用 55%,黄、绿、青、蓝使用 60%,紫、粉使用 65%。柔和背景与强调背景在亮色模式使用 90% / 85% 明度,在暗色模式使用 10% / 15% 明度,配合主要文字色使用。同一颜色共用色相。HSL 显示定义值,HEX 与 RGB 显示浏览器计算值。
--color-red-surface--color-red-surface-strong红
--color-red--color-red-text.text-red--color-orange-surface--color-orange-surface-strong橙
--color-orange--color-orange-text.text-orange--color-yellow-surface--color-yellow-surface-strong黄
--color-yellow--color-yellow-text.text-yellow--color-green-surface--color-green-surface-strong绿
--color-green--color-green-text.text-green--color-teal-surface--color-teal-surface-strong青
--color-teal--color-teal-text.text-teal--color-blue-surface--color-blue-surface-strong蓝
--color-blue--color-blue-text.text-blue--color-purple-surface--color-purple-surface-strong紫
--color-purple--color-purple-text.text-purple--color-pink-surface--color-pink-surface-strong粉
--color-pink--color-pink-text.text-pink文字颜色
.text-primary
主要文字
The quick brown fox.
.text-muted
辅助文字
The quick brown fox.
.text-accent
强调文字
The quick brown fox.
.text-inverse
反色文字
The quick brown fox.
链接与控件
控件默认高 40px,触屏为 44px;横向内边距 12px,盒子内边距 16px。移动鼠标或按 Tab,查看悬停与键盘焦点。
链接与导航
正文链接默认带下划线;导航和条目标题默认使用正文色,辅助链接使用灰色。悬停或键盘聚焦时变蓝,当前导航保持蓝色。站内与站外链接按相同的功能规则着色。
复选框
勾号表示已选,横线表示部分选中。点击标签或用 Tab 聚焦后按空格切换;禁用项保留当前状态。
亮色
.control-checkbox / .control-choice暗色
.control-checkbox / .control-choice单选框
同组只能选择一项。用 Tab 进入选项组,再用方向键切换;圆点表示当前选择,没有部分选中状态。
亮色
.control-radio / .control-choice暗色
.control-radio / .control-choice下拉选择
对照可用与禁用状态;可用示例包含长选项和不可选项。
亮色
Select / .type-uiSelect / 窄宽度与长标签Select / 禁用暗色
Select / .type-uiSelect / 窄宽度与长标签Select / 禁用文本输入
单行用于简短内容,多行用于段落内容。
亮色
TextField / .type-uiTextField / 多行暗色
TextField / .type-uiTextField / 多行输入状态
只读内容可以选择和复制;禁用控件不可操作;错误状态同时提供文字提示。
亮色
TextField / 只读TextField / 禁用TextField / 错误暗色
TextField / 只读TextField / 禁用TextField / 错误完整组合
相同内容的亮暗对照。按 Tab 可查看实际焦点;焦点样式示例持续显示轮廓,便于比较。
图标
亮色
界面图标
暗色
界面图标
装饰
亮色
首字
.type-dropcap我喜欢清晰、简洁的文字。首字放大,让阅读有一个明确的起点。
Every story begins with a single letter. A considered initial gives the opening paragraph its own rhythm.
字标
.text-accent呼吸光标
.type-title作品
Projects
.type-body文字与光标
.type-meta图示文字
.type-diagram-title
.type-diagram-note
ASCII 字符画
.type-ascii
(o_) _/ )- | | -----
暗色
首字
.type-dropcap我喜欢清晰、简洁的文字。首字放大,让阅读有一个明确的起点。
Every story begins with a single letter. A considered initial gives the opening paragraph its own rhythm.
字标
.text-accent呼吸光标
.type-title作品
Projects
.type-body文字与光标
.type-meta图示文字
.type-diagram-title
.type-diagram-note
ASCII 字符画
.type-ascii
(o_) _/ )- | | -----
文案参考:《中文文案风格指南》(LeanCloud)。