Розуміння CSS color-mix()

Як веб-розробники, ми часто використовуємо CSS для маніпулювання та стилізації кольорів, але завжди шукаємо більш інтуїтивні способи їх змішування та маніпулювання ними. Ось тут і з'являється функція CSS color-mix(), яка пропонує новий, потужний спосіб змішувати кольори безпосередньо в CSS.

Перегляньте мої приклади на codepen для функції color-mix(), щоб побачити живу демонстрацію теми, яку обговорюється в цій статті:
https://codepen.io/Nicolas-Wanner/pen/jENQjNQ

Що таке функція color-mix()?

Функція color-mix() в CSS дозволяє змішувати два кольори разом на основі заданого співвідношення.

Ось приклад використання color-mix():

element {  
 background-color: color-mix(in sRGB, red 50%, yellow);  
}

У цьому прикладі red і yellow змішуються в рівних частинах (50% кожного). Результат — оранжевий відтінок.
Але ми можемо змішувати не тільки суцільні кольори, але й кольори з будь-яким прозорим значенням кольору:

element {  
 background-color: color-mix(in sRGB, red 50%, transparent);  
}

Ще одна чудова особливість полягає в тому, що ми можемо використовувати будь-який колір як CSS змінну.

element {  
 background-color: color-mix(in srgb, var(--my-color) 50%, #000);  
}

Розуміння параметрів color-mix()

Функція починається з вказівки колірного простору. Це необов'язково, але може бути корисно для контролю того, як відбувається змішування. in sRGB — це найбільш поширений колірний простір для веб-дизайну і представляє стандартну RGB модель кольору, тому для наших потреб ми можемо завжди використовувати цей колірний простір.

Підтримка браузерами та обмеження

З моменту випуску у 2023 році, color-mix() підтримується в усіх основних сучасних браузерах.

Висновок

Функція color-mix() в CSS — це потужний інструмент для змішування кольорів. Ми можемо зробити будь-який колір світлішим, темнішим або прозорішим безпосередньо в CSS. Найкраща частина, на мою думку, полягає в тому, що нам не потрібно знати, який тип кольору використовується, що може бути особливо корисно при маніпулюванні CSS змінними.

Перекладено з: Understanding CSS color-mix()

Leave a Reply

Your email address will not be published. Required fields are marked *