Подключиться через MCP →

Введите расчет

Математическая формула

Реклама

Результатов

Коэффициент контрастности
21,00:1
Коэффициент контрастности WCAG 2.x
Уровень WCAG Требование Результат
AA — обычный текст ≥ 4.5:1 Пройдено
AA — крупный текст ≥ 3:1 Пройдено
AAA — обычный текст ≥ 7:1 Пройдено
AAA — крупный текст ≥ 4.5:1 Пройдено
Яркость переднего плана 0
Яркость фона 1

Что такое коэффициент контрастности WCAG?

Коэффициент контрастности показывает, насколько хорошо два цвета отличаются друг от друга — чаще всего речь идёт о тексте на фоне. Рекомендации по доступности веб-контента (WCAG 2.x) используют этот показатель, чтобы задать минимальные пороги: благодаря им контент остаётся читаемым для людей со слабым зрением и нарушениями цветовосприятия. Значения варьируются от 1:1 (цвета полностью совпадают) до 21:1 (чистый чёрный на чистом белом).

Two side-by-side panels showing dark text on a light background versus light text on a darker background, with a contrast ratio symbol between them
Contrast ratio compares the relative luminance of a foreground and background color.

Как пользоваться калькулятором

Укажите цвет переднего плана (текста) и цвет фона в формате HEX — например, #1a73e8 или в сокращённой записи #fff. Калькулятор линеаризует каждый цвет, вычисляет его относительную яркость и выдаёт коэффициент контрастности вместе с проверкой «прошёл / не прошёл» по каждому порогу WCAG.

Разбор формулы

Коэффициент рассчитывается как \((L_1 + 0{,}05) / (L_2 + 0{,}05)\), где \(L_1\) — относительная яркость более светлого цвета, а \(L_2\) — более тёмного.

$$\text{Ratio} = \frac{L_1 + 0.05}{L_2 + 0.05} \\[1.5em] \text{where}\quad \left\{ \begin{aligned} L_1 &= \max(L_{\text{Foreground}},\, L_{\text{Background}}) \\ L_2 &= \min(L_{\text{Foreground}},\, L_{\text{Background}}) \\ L &= 0.2126\,R_{lin} + 0.7152\,G_{lin} + 0.0722\,B_{lin} \\ c_{lin} &= \begin{cases} \dfrac{c}{12.92} & c \le 0.03928 \\[0.4em] \left(\dfrac{c+0.055}{1.055}\right)^{2.4} & c > 0.03928 \end{cases} \end{aligned} \right.$$

Относительная яркость определяется так: каждый канал sRGB переводится в значение от 0 до 1 и линеаризуется (каналы со значением \(0{,}03928\) и ниже делятся на \(12{,}92\); более яркие рассчитываются по формуле \(((c+0{,}055)/1{,}055)^{2{,}4}\)), после чего они объединяются как \(0{,}2126\cdot R + 0{,}7152\cdot G + 0{,}0722\cdot B\). Поправки \(0{,}05\) предотвращают деление на ноль и моделируют рассеянное свечение экрана.

Diagram showing two color swatches converted to relative luminance values L1 and L2 feeding into the contrast ratio fraction
Each color's relative luminance (L) is computed, then combined as (L1 + 0.05) / (L2 + 0.05).

Пример расчёта

Чёрный текст (#000000) на белом фоне (#FFFFFF): яркость чёрного равна \(0\), белого — \(1\). Коэффициент составит

$$\frac{1 + 0.05}{0 + 0.05} = \frac{1.05}{0.05} = 21:1$$

— максимально возможное значение, которое с запасом проходит все уровни.

Частые вопросы

Какой контраст мне нужен? Уровень WCAG AA требует \(4{,}5:1\) для обычного текста и \(3:1\) для крупного (≥18pt или 14pt полужирным). Уровень AAA требует \(7:1\) и \(4{,}5:1\) соответственно.

Важен ли порядок цветов? Нет. Формула всегда делит большую яркость на меньшую, поэтому при смене местами переднего плана и фона коэффициент остаётся прежним.

Почему нельзя просто сравнить яркость? Человеческое восприятие цвета нелинейно и сильнее реагирует на зелёный. Именно поэтому при расчёте яркости применяются гамма-коррекция и отдельные коэффициенты для каждого канала, а не простое усреднение.

Последнее обновление: