F5.13.4Breaking palette change设计

色阶体系一旦发布,中途改变级数会波及所有引用组件

别名: 色阶改级 · 插入档位 · scale migration

概念解释

产品已经全面引用蓝 500 当默认填充、600 当按下。中途觉得分辨率不够,在中间插一档,或从 10 档改成 12 档,旧的 600 不再是原来那枚色。所有「深一档」的写法都会滑到别人的位置上。色阶级数是发布契约:改级数不是调色,是一次会波及全部引用的断裂。

机制

引用分两种。显式引用(blue.600)在插档之后可能仍指向旧名字,但那一档的观感位置已经变了——名字没断,外观断了。相对引用(「比默认深一档」)会滑到新邻居上,行为断了。两种都会在主题、图表、邮件模板、第三方皮肤里同时炸开,因为它们读的是同一张表。影响面按引用次数而不是按「我们只改了蓝」来算。

插档、删档、重编号都是改级数。只改某一档的 hex 而不改档数,是修色,波及面小得多,前提是角色仍指向同一序号。

边界

  • 尚未对外发布、没有外部消费者的内测表可以改级数,代价是内部组件一次迁移。
  • 加一个新色相家族不是改级数;在旧家族中间塞档才是。
  • 深色主题若与浅色共用序号,改浅色级数会连带深色;两套表独立编号则可以只迁一套,但组件要知道自己读哪套。

怎么落地

  • 发布前把级数当作冻结项,与档数取舍一起做完,而不是上线后再「补两档」。
  • 若必须改级数,走迁移:旧序号映射到新序号的对照表、按引用点名改、设废弃期,禁止静默插档。
  • 相对步进(深一档)尽量少用;能写死序号就写死,减少滑档。
  • 验证办法:在改级数的分支上,列出全部对色阶序号的引用,抽查视觉回归;任何「没改过的组件」外观变了,就是波及,不要当成巧合。

延伸

  • 同组F5.13.1 色阶级数需要在精细控制与维护成本之间取舍 · F5.13.2 色阶命名用数值序号而非语义词,避免语义随版本演变 · F5.13.3 算法生成的色阶仍需人工校正视觉跳变明显的档位
  • 相邻F5.09 色板的感知要求 · F5.03 品牌色与功能色
  • 站内检索breaking palette change · scale migration · colour tokens

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/F5.13.4