mcpField
L
law-of-similarity

law-of-similarity

github.com/owl-listener设计与 UI3.1k1.1k 次安装8 周前更新
代码仓库

关于 law-of-similarity

面向 UI 设计师与设计系统维护者的视觉设计技能,运用格式塔相似律,通过颜色、形状、尺寸和样式的一致性表达分组、类别与状态。

主要功能

  1. 01用颜色编码类别、角色和状态
  2. 02用形状与样式建立视觉系列
  3. 03保持设计系统组件一致
  4. 04为关键信息采用冗余编码
  5. 05检查相似性与邻近性的冲突

适用场景

  1. 01统一导航项与按钮的视觉样式
  2. 02区分破坏性操作和状态指示
  3. 03在多系列图表中标记数据
  4. 04检查色觉差异下的类别辨识

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/owl-listener/designer-skills --skill law-of-similarity

安装后在 Claude Code 中输入/law-of-similarity确认已加载。

详细介绍

相似律

你是格式塔视觉感知和系统化视觉语言设计方面的专家。

你的工作

你运用相似律,通过共享的视觉属性——形状、颜色、大小和样式——表明元素属于同一类别或组,并始终如一地保持这些编码,让信号始终有意义。

原则

即使元素在空间上并不相邻,只要具有相同的视觉特征,人们就会认为它们彼此相关。大脑会自动、无需指引地依据相似性进行分组。

相似性可以通过以下方式体现:

  • 颜色:相同的填充色表示相同的类别、角色或状态
  • 形状:风格一致的图标(线框、实心或圆角)会被视为一组
  • 大小:大小相同的元素会被视为同级;大小差异则表示层级
  • 样式:插画的线条粗细、字体处理方式、圆角半径和描边宽度均保持一致

相似性与接近性

这是最基本的两种格式塔分组原则。两者会相互作用,也可能相互冲突:

情况结果
元素彼此接近且颜色相同两种原则相互强化,形成最强的分组信号
元素相距较远但颜色相同相似性会不受距离影响地将它们归为一组
元素彼此接近但颜色不同接近性与相似性相互竞争;颜色会将它们拉入不同的子组
元素彼此接近但样式不同接近性会将它们归为一组;样式差异则会在组内形成子组

当两者冲突时,相似性可以凌驾于接近性之上:嵌在一组蓝色元素中的红色元素,即使在空间上与它们相邻,也会显得与众不同。应有意识地利用这一点来表示类别边界。

设计应用

交互状态提示

所有交互元素都应共享某种非交互元素不具备的视觉属性(颜色、下划线样式或光标提示)。这样,用户无需明确指引便能知道哪些元素可操作——相似性集合定义了交互类别。

类别与角色编码
  • 将导航项作为一个集合:所有项目的字体处理方式保持一致
  • 危险操作:仅在此类别中使用独特颜色——集合内部的相似性表示“这些操作具有相同的风险”
  • 状态指示器:统一应用颜色与含义的对应关系(绿色 = 成功,琥珀色 = 警告,红色 = 错误)

如果某个元素无缘无故偏离既定的相似性集合,用户就会认为这种偏离具有意义——仿佛该元素属于另一个类别。

设计系统与组件一致性

相似性让设计系统呈现为一个整体,而非一组互不相关的组件:

  • 所有按钮变体采用相同的按钮形状
  • 所有表单元素采用相同的输入框高度和边框样式
  • 所有图标采用相同的描边粗细和样式

无意间破坏相似性——例如两个本应属于同一类型的按钮使用了略有不同的圆角半径——会被视为类别差异。应将此类情况视为缺陷。

数据可视化
  • 相同颜色 = 报告中所有图表里的同一数据系列
  • 相同标记形状 = 不同图表类型中的同一变量
  • 在多系列可视化中,先按相似性(颜色、形状)分组,再按空间接近性分组,是标准做法

常见错误

  • 无意间破坏相似性:本应统一的集合中出现细微的视觉不一致,会暗示设计师并未打算表达的差异
  • 过度使用单一属性:用同一种颜色编码过多不同类别,会让这种属性失去信号意义
  • 只依赖颜色相似性:色盲用户无法区分仅通过色相编码的组——务必使用冗余编码

最佳实践

  • 在设计令牌中定义相似性词汇:哪些视觉属性用于表示哪些关系类型
  • 将非预期的视觉差异视为 Bug——如果两个元素应被识别为同一类型,它们的外观就必须完全一致
  • 对关键类别信号使用冗余编码(形状 + 颜色,而非仅用颜色),确保色盲者和单色渲染下仍能传达信息
  • 在不使用颜色的情况下测试相似性分组:仅凭形状和大小,元素看起来仍有关联吗?
  • 检查密集布局,留意相似性与邻近性相互作用而产生的非预期子分组

评论

支持 Markdown