F2.03.1finite spacing scale设计

有限的间距档位降低决策与不一致

别名: 间距档位 · spacing scale · 4px 网格

概念解释

把 padding 和 gap 收成一短列合法值——例如 4、8、12、16、24、32、48——决策次数会掉下来,页面之间也不容易各自长出 13、14、15。档位要少,是因为 13 和 14 在屏幕上看不出差别,却会在实现里变成两套要对齐的数。

打开布局检查器,8 到 24 之间若出现十几个不同的内边距,产品就像用不同零件箱拼起来的。这条管的是集合大小,不管 4 还是 8 当基数,也不管偶尔的光学例外。

机制

人眼对间距的差别有阈:几像素之差常常低于可辨差,省下来的「精确」买不到可见效果,只买来后续匹配成本。设计时每多一个合法值,就要多一次选择;多人协作时,选择会发散。有限档位把问题从「这该是多少像素」改成「这是紧、常规还是松」三档语义,语义才能在组件之间对齐。

档位太少也会伤:只剩 8 和 32,组内和组间无法做出中间层次,只好全用 8,结构又糊回去。所以「有限」是够用的短列表,不是越少越好。

边界

插画、数据可视化、需要光学微调的字形,本来就会落到档外;那些值应当有名字、有理由,并且不进入日常菜单。动画过程中的瞬时间距不必吸附到档位。打印稿和物理包装的尺度也不是这套屏幕档。

新屏幕密度或动态字号会让「看起来的松紧」漂移,档位的语义(紧/松)仍应稳定,像素可以随字号放大,但不要因此偷偷加出第 9、第 10 个日常选项。

怎么落地

  • 公布一份短列表,并给每档一句用途(控件内边距、组内、组间、区块间),设计工具里只开这些选项。
  • 代码里把随意像素写成对档位的引用;评审时把「多一个数」当成要解释的事,而不是口味。
  • 验证:导出一屏里所有 padding / gap / margin 的数值,统计 8–32 区间内有多少个不同的数。超过大约六档,列出每一个不在表上的值,问它有没有独立语义。没有的,并到最近档,再看这一屏各组是否仍能分开。

延伸

  • 同组F2.03.2 基数选择需与常见屏幕密度整除 · F2.03.3 标度外的例外值会瓦解体系
  • 相邻F2.02 列、槽与外边距 · F2.06 邻近性分组 · F2.04 留白
  • 站内检索spacing scale · 4-point grid · decision cost · spacing steps

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/F2.03.1