MODULE 06 / LESSON 02

间距系统与尺寸规则

用一组可复用的数值表达空间关系。

22 / 60 课组织界面与交互含互动实验

先理解这个概念

间距系统把随意的数值收敛成可讨论的规则。4 或 8 的倍数常用作起点,但字体基线、边框和光学校正可能需要例外。语义间距如字段间距、区块间距比到处使用 space-4 更便于理解。

间距系统将零散的像素决定转成少量可重复关系。基础刻度有助于维护,但“必须都是某个数字的倍数”并不是设计目标。真正重要的是同类关系使用同类间距,例外有理由,并能在紧凑模式、窄屏和不同组件里解释清楚。

用程序员的语言说

像从重复常量中抽取配置,改动能在整套界面里保持一致。

记住这三个原则

  1. 01

    区分组件内部间距与组件之间间距。

  2. 02

    优先复用少数间距等级,允许有理由的例外。

  3. 03

    用 min-height 和 padding 适应文本变化,少写固定高度。

实际设计时,分三步做

  1. STEP 01

    从现有页面提取高频关系:图标与文字、标签与字段、卡片内边距、章节间距。按用途归并,而不是先列很多数字。

  2. STEP 02

    给这些关系映射少量刻度,明确组件内部间距与页面布局间距分别由谁负责,避免重复叠加。

  3. STEP 03

    将两个组件并排和嵌套使用,检查外边距是否翻倍;再试紧凑模式,确认压缩的是合适层级。

一个容易理解的例子

BEFORE / 常见问题

同一套表单字段间距分别是 13、17、19、22px。

AFTER / 可以这样改

标签与输入间距 8,字段间距 24,组间距 40,并统一引用变量。

规律的节奏让结构更清晰,也减少维护成本。

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

表单字段自身带底部 margin,表单容器又使用 gap,最终字段之间出现双倍空白。可以约定字段组件只处理标签、输入和说明的内部间距,字段之间由容器负责。卡片也不应同时假定父容器和子内容的外部距离。清楚的间距所有权让组合更稳定,减少开发时不断覆盖样式。

适用边界与取舍

光学调整、边框补偿和平台控件可能需要例外。应记录为何例外,而不是为了符合刻度破坏视觉对齐或交互尺寸。

YOUR TURN

把这个原则用一次

先做一个小判断

给一个卡片定义内部与外部间距。

再完成一份设计练习

把一个页面中的间距归并为六个以内的常用值,并找出一个应保留的合理例外。

容易踩的坑

把所有距离都设置为 16,仍然无法表达分组关系。

继续查阅

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

MDN · CSS layout