Site icon 8HOST.COM

Как работает CSS-функция color-mod

В препроцессорах типа Sass уже давно есть функции для работы с цветом. Эта возможность настраивать и изменять цвета должна скоро появиться в CSS благодаря модулю CSS Color Level 4. С его помощью вы сможете применить к базовым цветам несколько регуляторов цвета. Этот модуль очень удобно сочетать с переменными CSS, потому что это позволяет определить базовые цвета как переменные, а затем применить регуляторы там, где это необходимо.

Примечание: Обратите внимание, что функция управления цветом раньше называлась просто color. Недавно в спецификации название было изменено на color-mod.

Вот пример использования функции color-mod:

.box {

  // добавим немного красного

  color: color-mod(rgb(147,123,25) red(218));

}

Также ее можно использовать с HEX-значением в качестве основного цвета:

.box {

  color: color-mod(#937b19 contrast(25%);

}

и даже с вычисляемыми свойствами (переменными CSS):

:root {

  --base-color: #937b19;

}

.box {

  color: color-mod(var(--base-color) tint(59%));

}

Из приведенных выше фрагментов получится цвет rgb(218, 123, 25).

В рамках одной цветовой функции можно использовать несколько регуляторов цвета:

.box {

  color: color-mod(purple lightness(62%) red(218) blue(202) whiteness(25%));

}

Регуляторы цвета

Функция color-mod поддерживает следующие регуляторы цвета:

.box {

  color: color-mod(hotpink blend(yellow 59%));

}

 Поддержка браузерами

Модуль CSS Colors Level 4 все еще находится на стадии разработки в процессе рекомендации, а поддержка функции color-mod еще не реализована ни в одном браузере. Хорошая новость в том, что вы можете начать использовать ее уже сегодня благодаря PostCSS и плагину cssnext – пока функция не поддерживается в браузерах, он преобразует стили таким образом, чтобы они все равно работали.

Также советуем обратить внимание на ColorMe.io –это отличный инструмент, который поможет вам составить цвета.

Читайте также: Градиент и изображения-границы на чистом CSS