Skip to content

基础 — Prism 设计语言(受 Apple 启发的默认主题) ​

原则 ​

三条原则贯穿整个系统。当某个设计决策存在争议时,回到这里。

  • Clarity(清晰) — 文本清晰可读,图标精准,留白充足。功能由形式自然生发,而非依赖装饰。
  • Deference(克制) — 界面退居其次,让内容主导。克制用色、轻量效果——绝不与内容争夺注意力。
  • Depth(层次) — 分层、过渡与真实动效构建出空间感,帮助用户理解结构并保持上下文。

设计令牌 ​

令牌分为三层;界面只引用语义层与组件层,因此重新换肤和深色模式都只需改动一处。

  1. Primitive(原始层) — 具体取值:blue-600 = #0066CC
  2. Semantic(语义层) — 按意图命名:color.accent → blue-600
  3. Component(组件层) — 绑定到某个组件:button.bg → color.accent

在代码中,令牌是 CSS 变量(var(--color-accent)、var(--s-4)、var(--radius-card))。切勿硬编码原始值。

颜色 ​

中性灰承担了界面约 95% 的部分。颜色保留给关键操作、状态和品牌时刻——每屏不超过一种强调色。

中性色阶

令牌值令牌值
Gray 0#FFFFFFGray 400#86868B
Gray 50#F5F5F7Gray 500#6E6E73
Gray 100#E8E8EDGray 600#424245
Gray 200#D2D2D7Gray 800#1D1D1F
Gray 300#AEAEB2Gray 900#000000

系统色(谨慎使用) — Blue #0066CC(主色)、Green #1D8A4E(成功)、Orange #C2410C(警告)、Red #C5283D(危险)。

语义令牌 — --label-primary:#1d1d1f、--label-secondary:#6e6e73、--label-tertiary:#86868b、--color-accent:#0066cc。

  • ✓ DO — 用中性灰构建层级;把强调蓝留给页面上唯一最重要的操作。状态色只在需要时短暂出现。
  • ✕ DON'T — 不要在一屏堆叠多个彩色按钮,也不要用高饱和度色填满大面积背景——那会让颜色失去信号作用。

排版 ​

使用系统字体(SF Pro / 苹方 SC)。字号按比例阶梯递增;大标题收紧字距,正文放宽行高。拉丁文与中文共用一套阶梯。

样式字号 / 字重 / 字距·行距
Large Title34 / 700 / −0.02em
Title 128 / 640 / −0.015em
Title 222 / 600 / 0
Headline17 / 600
Body17 / 400 / 行高 1.5
Subhead15 / 400 / 1.45
Footnote / Caption13 / 400 / 1.4

字体栈:-apple-system, "SF Pro Text", "PingFang SC", system-ui, sans-serif。

  • ✓ DO — 每屏最多三种字号以构建层级;正文每行 45–75 个字符,行高 1.5。
  • ✕ DON'T — 不要用纯黑 #000 排正文;不要将长段落居中;正文字号不要低于 13px。

间距与栅格 ​

所有间距都是 4 的倍数,以 8 为基础节奏。两个元素关联越紧密,间距越小;分组之间则留出更大的呼吸空间。

令牌px用途
--s-14紧凑——图标 ↔ 文本
--s-28基础节奏
--s-312输入框内边距
--s-416卡片内边距、列表行
--s-524组件之间
--s-632区块内的分组
--s-764主要区块之间

布局栅格 — 灵活的 12 列、24 间隔。优先使用 gap 而非 margin。内容主列宽度上限约 720px;超过后让留白增长,而不是拉伸行长。

响应式断点 ​

断点宽度列数边距
Compact< 600416
Regular600–1024824
Large≥ 102412≥ 40

列数与边距随宽度增长;可读的内容主列保持有界,布局始终避开安全区域和刘海。

阴影高度 ​

用单一的阴影阶梯表达高度。阴影柔和、低不透明度、略偏冷色;层级越高离用户越近,阴影越大越弥散。

令牌值层级
--shadow-10 1px 2px rgba(0,0,0,.06)卡片
--shadow-20 4px 12px rgba(0,0,0,.08)下拉菜单、抬升的卡片
--shadow-30 12px 32px rgba(0,0,0,.12)浮层、底部弹层
--shadow-40 24px 60px rgba(0,0,0,.18)模态框

深色模式 ​

深色模式不是简单的反色。背景用近黑色而非纯黑,用分层阴影高度表达高度感,并把强调色略微提亮以保持对比度。

背景层标签强调色
Light#FFFFFF#F5F5F7#1D1D1F#0066CC
Dark#000000#1C1C1E#F5F5F7#3393FF

同名令牌通过 [data-theme="dark"] 和 prefers-color-scheme 切换。

基于 MIT 许可发布。