E2.04.2placeholder contrast failure设计研究

占位符对比度通常低于可读阈

别名: 占位符灰色文字 · muted placeholder · WCAG 占位符对比

概念解释

占位符要看起来「不像已经填进去的值」,设计上几乎总会把它做成浅灰。浅到一定程度,文字就落到对比度可读阈之下:低视力、强光下的屏幕、降对比主题里,槽内像是空的。这叫占位符对比度失败(placeholder contrast failure)。它管的是空槽里那行字能不能被读到,不是这行字在输入后还会不会在,也不是它该不该写格式。

机制

占位符夹在两股力之间。对比太高,会被当成真正的值,人跳过这一格或去「删掉」本来就不存在的内容;对比太低,提示等于没写。默认样式和多数主题选择站在低对比一侧,因为「像值」的误报更刺眼,于是可读性先被牺牲。阳光下的手机、降透明度、老花和未校正的低视力,会把已经偏浅的灰进一步送过阈。占位符还画在槽的填充之上,槽若不是纯白,有效对比比对着页面背景测到的更差。这是颜色与明度问题,不是生命周期问题。

怎么研究

在标准照明和强光、以及模拟低视力条件下,测量占位符与槽背景的对比,并做可读性任务:大声读出空槽里的字、或在一排空字段里找出指定提示。自变量:灰阶、槽填充色、字号、是否斜体。因变量:朗读正确率、把占位符误当成已填值的比例、漏填率。对照「对比达标但仍被当成值」的条件,才能知道阈值不是越高越好。不要只用设计稿的对比计算器:要在真实槽填充和系统主题里取样。

边界

用户把系统调成强制高对比或深色时,作者指定的浅灰可能被映射成另一种色,失败模式从「看不见」变成「看起来像值」。斜体、更小字号会在对比勉强够时仍读不清,对比不是唯一参数。空槽如果还有槽外标签,占位符读不清只损失例子,不损失字段身份;若名称也靠这行浅字,对比失败会叠加身份失败。打印样式和截图里的占位符往往比屏幕上更浅,不能拿打印稿当通过证据。

怎么落地

  • 测量占位符文字对槽填充——不是对页面背景——的对比,让需要被读到的提示达到可读,而不是默认浅灰。
  • 用字重、字号或槽内位置区分「提示」与「已填值」,不要只靠把字变淡。
  • 在阳光、深色模式和系统高对比里各看一遍空表:提示既要能读,又不能像预填。
  • 验证:找低视力或临时把屏幕亮度打低的人读空槽。读不出就加深;把提示当成已填而跳过,就改形状而不是继续淡化。

延伸

  • 同组E2.04.1 占位符在输入开始后消失,无法充当标签 · E2.04.3 占位符不适合承载格式要求
  • 相邻E2.01 单行输入框 · E2.05 浮动标签
  • 站内检索placeholder contrast failure · muted placeholder · contrast threshold

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E2.04.2