跳到主要内容
文心 · 万形

布局与间距

默认 4px 网格,三档内容宽度,用留白和单边线分组——不用方框。

间距网格

默认密度下,全部间距落在 4px 网格上。--space-1 到 --space-32 共 12 档,跳跃式而非线性,因为视觉上有意义的间距差需要成比例增长。

Token值典型用途
--space-28px标签内边距、图标间隙
--space-416px表单控件内边距
--space-624px字段之间
--space-832px条目之间——卡片的替代
--space-1248px区块之间
--space-2496px章节之间

内容宽度

--width-article · clamp(520px, 55vw, 640px) —— 长文

--width-content · clamp(620px, 65vw, 760px) —— 一般内容

--width-showcase · clamp(700px, 72vw, 920px) —— 展示型

--padding-page-x · clamp(20px, 5vw, 72px) —— 页面左右留白

布局原语

wx-spread —— 两端分布 right

wx-cluster 换行的横向组 共享 gap

wx-cols--2 分栏,grid 实现,无竖向分隔线。

竖线在这套系统里几乎总是多余的——列之间的间距已经完成了分组。

分隔线是主要结构手段

wx-rule 是发丝线,也是这套系统最主要的结构手段。 它替代了卡片承担的分组职责,而不引入任何视觉噪声。


默认发丝线


短线——用于段落内的轻分隔


强线——用于章节边界

没有卡片,那怎么分组

这是这套系统被问得最多的问题。答案是三条,按优先级:

  1. 邻近——格式塔原则。相关的东西靠近,无关的东西远离。 --space-8 和 --space-12 的差别足以表达"同组"与"不同组"。
  2. 单边线——需要更明确的边界时,加一条线,不是四条。
  3. 标题——一个小标题比一个方框更能说明这组内容是什么。

禁的是几何形状——四边包围的方框(边框 / 阴影 / 填充底色三者任一 + 圆角), 不是"卡片"这个名词。所以不要把它改名叫 .panel、.box、 .tile 再放回来。

高密度预设

需要更紧凑的知识工具或列表时,在根节点加 data-density="dense"。它只覆盖 --space-*,不会偷偷缩小字号、边框或触控目标;dense 为更紧凑的节奏有意使用非 4px 的值, 所以不继承默认网格承诺。这是可逆的密度选择,不是第二套视觉语言。