css - CIELAB空间对比度阈值公式

标签 css web colors color-scheme

如 WCAG 指南中所述,背景色和前景色之间的对比度应至少为 4.5:1,如 http://www.w3.org/TR/WCAG20/Overview.html#IEC-4WD 所示。

但是上面提到的公式是针对RGB格式的颜色(Ctrl+f 'sRGB' 看公式)。我正在处理 CIELAB 空间,那么这个公式可以转换为 CIELAB 空间吗?或者我们可以在 CIELAB 距离形式中获得类似的阈值吗?

我的观察
两种颜色之间的 CIELAB 距离与 RGB 格式中相同两种颜色之间的对比度之间没有一一对应的关系。

最佳答案

WCAG 指南 define contrast ratio作为

(L1 + 0.05) / (L2 + 0.05), where

  • L1 is the relative luminance of the lighter of the colors, and
  • L2 is the relative luminance of the darker of the colors.

反过来,他们define relative luminance作为

the relative brightness of any point in a colorspace, normalized to 0 for darkest black and 1 for lightest white


这匹配(并非巧合!) L 的定义在 CIELab 色彩空间中。
但是,与 WCAG 对 L 的定义不同。 , L在 CIELab 中,是线性的,这意味着对比度由 L1 - L2 测量.那么,我们如何在两者之间进行转换呢?
不幸的是,我在任何地方都找不到它的公式,但幸运的是,我们可以从 https://cielab.io 中获得我们想要的值。 .经过一些试验和错误,我建立了以下内容:


WCAG 对比度
CIELab 差异在 L

1:1
0

3:1
38

4.5:1
50

7:1
62

21:1
100


这使得确定 CIELAB 值之间足够的对比度变得非常简单。

关于css - CIELAB空间对比度阈值公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22031644/

相关文章:

css - 我无法删除我的 css 文件中的空间

CSS/XHTML 和静态网页?

html - 为什么我的内容对于容器来说太宽了?

sql - 仅当项目属于所有者时才插入序列

java - Cellrenderer 更改单元格背景颜色还更改值格式、对齐方式

jquery - Chrome/Opera jQuery CSS 定位不起作用

php - 检查 Codeigniter 中的登录和重定向不起作用

eclipse - 如何在 Eclipse 中调试在 jetty 上运行的 Web 应用程序?

Python GTK 颜色选择器小部件 - 设置颜色

winforms - RichTextBox 和下划线颜色