Проверка контрастности цветов
Считаем контраст пары «текст и фон» по WCAG 2.1 и справочно по перцептивному счёту APCA, а когда пара не проходит — сами подбираем ближайший проходящий цвет.
Считалка не загрузилась. Обновите страницу.
Годится любая запись CSS: HEX, rgb(), hsl(), oklch(), имя цвета. Полупрозрачные цвета складываем с фоном и считаем то, что увидит глаз.
Одну из записей не разобрали.
Примеры годных: #5c6472, rgb(92 100 114),
oklch(0.5 0.02 260), white.
Обычный текст, 16 пикселей. Большая часть написанного на сайтах выглядит так.
Крупный текст, 24 пикселя
Жирный от 18,66 пикселя тоже считается крупным
рамка кнопкиДвигаем только светлоту: тон и насыщенность вашего цвета сохраняются. Нажмите на вариант, чтобы применить.
Что стоит знать про эту пару
Не только вердикт, но и что поставить
Обычная проверялка отвечает «не прошло» и оставляет вас наедине с этим. Мы подбираем ближайший цвет, который норму проходит: двигается только светлота, тон и насыщенность вашего цвета сохраняются. Вариантов два — подтянуть текст или подтянуть фон, каждый показан плашкой с готовым HEX и новым коэффициентом. Один щелчок — и пара исправлена.
Два счёта: действующая норма и то, как видит глаз
Коэффициент WCAG 2.1 — действующая норма, по ней проверяют сайты, и вердикты здесь даёт она: 4,5:1 для обычного текста, 3:1 для крупного, 7:1 для уровня AAA. Но у этой формулы есть известная слабость: на тёмных фонах она ошибается. Хрестоматийный случай — серый фон #777777: формула предпочитает на нём чёрный текст, хотя глаз читает белый заметно лучше.
Поэтому рядом справочно стоит Lc по APCA — перцептивному счёту, который готовится для WCAG 3. Когда два счёта расходятся, мы прямо пишем, в какую сторону врёт старая формула и что с этим делать. Ни одна русская проверялка второго счёта не показывает.
Рамки и иконки — отдельная строка
Контраст нужен не только тексту. Границам полей ввода, рамкам кнопок, иконкам и прочим нетекстовым элементам WCAG 1.4.11 требует 3:1 с соседним цветом. В вердикте это отдельная строка, а в предпросмотре стоят рамка и значок, покрашенные вашей парой.
Полупрозрачные цвета считаются честно
Кнопки и подписи сплошь красят в rgba, а проверялки такие записи отвергают или считают неверно. Мы складываем цвета так, как это делает браузер: фон с белой страницей, текст — с получившимся фоном, и считаем контраст того цвета, который видит глаз.
Любая запись цвета
На входе годится всё, что понимает CSS: HEX, rgb(), hsl(), hwb(), lab(), oklch(), имена цветов. Разбор общий с нашим конвертером цветов — один словарь и одна математика на оба инструмента. Крупный текст по WCAG — от 24 пикселей или от 18,66 пикселя жирного; в предпросмотре есть образцы обоих.
Что рядом
Перевести цвет в другую запись умеет конвертер цветов, снять палитру с картинки — палитра из изображения. Читается ли текст на переходе цветов, проверяет генератор градиентов.
Другие инструменты
Просмотр исходного кода страницы
Исходный HTML страницы глазами робота Яндекса или Google
Визуальный HTML-редактор
Пишете как в текстовом редакторе — получаете готовый HTML
Код цвета HTML
Код цвета в HEX, RGB, HSL и HSB, с проверкой контраста
Эффект стекла в CSS
Стекло с проверкой читаемости надписи и запасным вариантом
Конвертер CSS в SCSS и обратно
CSS в SCSS со вложенностью и обратно, со сверкой результата
Конструктор сеток CSS Grid
Сетка под три экрана с готовым HTML и проверкой порядка блоков