Свойство
color
Задаёт цвет текста элемента. Это же значение подставляется вместо currentColor — в рамки, тени и SVG-иконки.
Пример
<p class="note">Цвет задан у абзаца, а <strong>жирный фрагмент</strong> его унаследовал.</p>.note {
color: darkslateblue;
}Результат
Синтаксис
color: <color>;- Начальное значение
- CanvasText
- Применяется к
- всем элементам и тексту
- Наследуется
- да
- Анимируется
- как цвет
- Вычисляемое значение
- вычисленный цвет
Начальное значение CanvasText — системный цвет текста: тёмный в светлой теме и светлый в тёмной (при color-scheme: dark).
Значения
- Именованный цвет
- Одно из 148 названий:
red,teal,rebeccapurple. Отдельное словоtransparent— полностью прозрачный цвет. - Шестнадцатеричная запись
#rrggbbили короткая#rgb, с прозрачностью —#rrggbbaa:#1e90ff,#09f,#00000080.rgb()иhsl()- Красный, зелёный и синий каналы или тон, насыщенность и светлота:
rgb(30 144 255),hsl(210 100% 56%). Прозрачность — через косую черту:rgb(0 0 0 / 50%). oklch()иoklab()- Цвет в перцептивно равномерном пространстве: одинаковая светлота выглядит одинаково светлой у разных тонов. Удобно для палитр:
oklch(62% 0.19 250). currentColor- Текущее значение
colorэлемента. Полезно в других свойствах, а в самомcolorозначает «как у родителя». - Системные цвета
Canvas,CanvasText,LinkTextи другие — цвета интерфейса, которые следуют настройкам системы и режиму высокой контрастности.
Как понять
color наследуется: задайте его у body — и весь текст страницы станет этого цвета, пока какой-нибудь элемент не переопределит его. Ссылки и поля форм — исключения: у них свои цвета в стилях браузера.
Второе важное свойство — currentColor. По умолчанию его используют рамка (border-color), обводка (outline-color), подчёркивание и другие декорации текста. Поэтому, меняя color, вы часто меняете и их: иконка в SVG с fill="currentColor" перекрашивается вместе с текстом кнопки.
Примеры
Рамка и иконка в цвет текста
Наведите курсор на кнопку — рамка и иконка сменят цвет вместе с текстом:
<button class="button" type="button">
<svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true">
<circle cx="8" cy="8" r="6" fill="currentColor" />
</svg>
Готово
</button>.button {
display: inline-flex;
align-items: center;
gap: 0.4em;
padding: 0.5rem 1rem;
color: seagreen;
background: none;
border: 2px solid; /* цвет рамки = currentColor */
}
.button:hover {
color: darkorange;
}Результат
Приглушённый текст с прозрачностью
Полупрозрачный цвет подстраивается под любой фон:
<p>Заголовок новости</p>
<p class="muted">2 часа назад</p>.muted {
color: rgb(0 0 0 / 60%);
}Результат
Подсказки
- Проверяйте контраст: по WCAG обычный текст должен контрастировать с фоном не меньше чем 4,5: 1, крупный — 3: 1. Светло-серый на белом — частая ошибка.
- Не передавайте смысл только цветом: красный текст ошибки стоит дополнить иконкой или словом.
- В режиме высокой контрастности Windows (
forced-colors: active) браузер заменяет цвета системными — используйтеcurrentColorи системные цвета, чтобы интерфейс не развалился. - Цвета ссылок задаются в правилах для
a: наследованный от родителяcolorна них не действует, пока не написаноa { color: inherit; }.
Поддержка браузерами
| Возможность | Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | Samsung Internet | Opera |
|---|---|---|---|---|---|---|---|---|
| color | 1 | 12 | 1 | 1 | 18 | 1 | 1.0 | 3.5 |
| Значение currentColor | 1 | 12 | 1.5 | 4 | 18 | 3.2 | 1.0 | 9.5 |
| transparent | 1 | 12 | 1 | 1 | 18 | 1 | 1.0 | 15 |
Яндекс Браузер работает на Chromium и поддерживает то же, что Chrome той же версии. Данные: MDN browser-compat-data 8.1.2, обновлено 17 сентября 2026 г.