WCAG对比度检测

填文字色和背景色,本页按 WCAG 的相对亮度公式算出对比度比值,告诉你这组配色够不够清晰、是否达到 AA 或 AAA 要求。

口径:按 WCAG 2.x 相对亮度公式计算 (L1+0.05)/(L2+0.05)。AA 普通文本需 ≥4.5,AAA 需 ≥7;大号文本阈值减半。演示 #333 对 #FFF 得 12.63。

使用方法

WCAG对比度检测三步:

  1. 「文字色」填前景色,演示 #333333。
  2. 「背景色」填背景色,演示 #FFFFFF(白底)。
  3. 点「检测对比度」,结果区给出比值与 AA / AAA 是否达标。

下方色块用你选的配色显示「示例文字 Aa」,可直观感受清晰度。

WCAG对比度检测能解决什么

它适合关心可读性与无障碍的人:

  • 无障碍合规:做政府、金融类页面时常被要求达到 WCAG AA。
  • 配色决策:灰色文字放在浅灰底上常常不达标,一测便知。
  • 暗色模式:切换深色底时重新检查文字是否还够清晰。

本页不做的事:不检查色盲友好、不检测图片上的文字——只算两种颜色之间的对比度比值。

原理和变量

① 用了哪个具体函数:先按 WCAG 公式把每个通道做 sRGB 线性化(小于等于 0.03928 用 c/12.92,否则用 ((c+0.055)/1.055)^2.4),再加权求和得相对亮度 L=0.2126R+0.7152G+0.0722B,最后算比值 (亮+0.05)/(暗+0.05)。

② 关键参数为什么这样取:系数 0.2126/0.7152/0.0722 来自人眼对绿光最敏感、蓝光最不敏感的特性;加 0.05 是为了避免纯黑时除零。

③ 遵循哪个标准:完全遵循 WCAG 2.1 的对比度定义,阈值 4.5(AA 普通)、3(AA 大号)、7(AAA 普通)、4.5(AAA 大号)。

④ 输入怎么变成输出:#333333 与 #FFFFFF:白 L=1,深灰 L≈0.0331,比值 =(1+0.05)/(0.0331+0.05)≈12.63,达到 AAA。

⑤ 边界与阈值:仅接受 3 位或 6 位十六进制;非法色值会提示,不会静默按黑或白处理。

⑥ 常见误用的正确解释:比值 1 表示完全相同(不可读);比值越高越清晰,但并非越高越好——纯黑对纯白 21 反而刺眼,正文常用 #333 一类深灰。大号文本指约 18pt 以上或 14pt 粗体。

完整示例

演示输入:文字 #333333、背景 #FFFFFF。推导:

  • 背景白色相对亮度 L=1.000。
  • 文字 #333333 三通道均为 51/255≈0.2,线性化后 L≈0.0331。
  • 对比度 = (1.000 + 0.05) ÷ (0.0331 + 0.05) ≈ 12.63。
  • 结论:≥7,达到 AAA(普通文本),同时满足 AA。

再试 #777777 对白底约 4.48,略低于 4.5,不达 AA,说明浅灰文字要谨慎。演示仅作说明。

输入范围与对照表

12 组常见文字/背景配色的对比度对照(仅作演示):

文字色背景色对比度AAAAA
#000000#FFFFFF21.00是是
#333333#FFFFFF12.63是是
#767676#FFFFFF4.54是否
#777777#FFFFFF4.48否否
#FFFFFF#00000021.00是是
#FFFFFF#33333312.63是是
#FF0000#FFFFFF3.00否否
#0000FF#FFFFFF8.59是是
#008000#FFFFFF5.14是否
#FFFF00#00000019.56是是
#808080#FFFFFF3.95否否
#CCCCCC#FFFFFF1.61否否

结果边界和舍入

对比度保留两位小数,理论范围 1.00~21.00。判级以两位小数后的真实值为准:例如 4.48 记为不达 AA,4.54 记为达到。大号文本(约 ≥18pt 或 ≥14pt 粗体)阈值减半为 3.0 / 4.5。

注意:本页只比较颜色本身,不考虑字号、字重与背景花纹;半透明色或叠加效果请先合成实际颜色再测。

常见问题

AA 和 AAA 是什么意思?

这是 WCAG 无障碍标准的两级要求:AA 是基本达标(普通文本 ≥4.5),AAA 是更严格(≥7)。

为什么 4.48 不达标?

因为 AA 普通文本要求 ≥4.5,4.48 差一点点也算不达标,建议把文字改深一点。

大号文本标准一样吗?

不一样。大号文本(约 ≥18pt 或 ≥14pt 粗体)阈值减半,AA 只需 3.0、AAA 只需 4.5。

纯黑配纯白最好吗?

对比度最高(21)但不是唯一选择;正文用 #333 一类深灰兼顾清晰与柔和,实测仍达 AAA。

支持 3 位十六进制吗?

支持,如 #0F0 会展开为 #00FF00 再计算。

会检查色盲友好吗?

不会,本页只算对比度,色盲友好需另用色模拟工具。

会上传我的配色吗?

不会,全部在浏览器本地计算。

半透明颜色能测吗?

不能直接测,请先把半透明叠加到背景上取实际合成色再输入。

相关工具