E1.11.3button contrast on container backgrounds设计研究
同一按钮出现在不同背景容器上时状态对比需重新核实
别名: 按钮透底 · 容器上的对比 · surface contrast
概念解释
一枚按钮会从白卡片、照片横幅、彩色提示条、半透明遮罩上分别出现。组件库里对着画板白底调好的默认/悬停/禁用,贴到这些容器上对比会塌。状态对比要按所在表面重核,不是按组件内部的绝对色值。同一 token 在另一块底上可以变成看不见,或变成另一枚主按钮。
机制
对比是控件与紧邻像素的差,不是控件与设计稿画板的差。半透明按钮会透出照片的亮部,悬停加深在亮部上仍可能比周围字更抢;描边次按钮在同色提示条上,描边和底融掉,只剩文字像一段链接。玻璃拟态、图片上的白字按钮,按下态那一点明度变化会被照片细节淹没。容器还可能自带主题:危险横幅已经是红底,再放红填充删除键,主次和危险一起糊掉。组件库保证的是「在约定表面上成立」,一离开约定表面,五态的相对阶差要重测。
怎么研究
把同一组件贴到至少四种容器:默认卡片、深色照片、品牌色横幅、模态遮罩。对每一态做对比测量,并做「能不能点 / 是不是加载」的迫选。
自变量:容器种类、按钮是否半透明、照片空间频率。 因变量:对比是否掉到难以分辨、状态迫选错误、误把容器底纹当成按钮按下。
只测静态主按钮不够。悬停和禁用是最容易在花底上消失的两态,必须进条件。
边界
完全不透明、自带实心底的主按钮对容器不那么敏感,但仍要看禁用灰是否刚好撞上容器灰。视频或动画背景每帧都在变,静态核对比不够,需要最坏帧或先给按钮垫一层稳定底。投影在深容器上消失,靠投影区分层级的次按钮会失败,应改靠描边而不是抱怨容器。
怎么落地
- 列出按钮实际会坐上去的容器,每一种拍一张五态;缺的容器不许用「应该差不多」过关。
- 半透明或描边按钮在照片、视频上先垫不透明底板,再画状态。
- 彩色横幅上不要复用与横幅同色相的填充按钮。
- 验证:在真实页面而不是组件画板里走一遍悬停、按下、禁用。有一态要靠想象才能从底纹里分出来,对比就没有按容器重核。