- Прорыв в CSS. Аналогичного функционала раньше не было.
- Мощный инструмент, ограниченный лишь вашей фантазией.
- Не бойтесь использовать!
--baseColor:
Alexey Khlebaev
:root {--main-bg-color: brown;}body {background-color: var(--main-bg-color);}
background-color: var(--main-bg-color, #000);
Получаем:
var documentProperties = getComputedStyle(document.documentElement);var value = documentProperties.getPropertyValue('--primary-color');
Назначаем
element.style.setProperty('--variable', 'value');
Удаляем
element.style.removeProperty('--variable');
gutter = 5px;@media (min-width: 100px) {gutter = 20px;}.Container {padding: gutter;}
.Container {padding: 5px;}
:root {--gutter: 5px;}@media (min-width: 100px) {--gutter: 20px;}.Container {padding: var(--gutter);}
<div class="sideBar"><div class="title">Sidebar title</div></div><div class="content"><div class="title">Original title</div></div>
titleColor = red;.title {color: titleColor}.sideBar {titleColor = blue}
.title {color: red;}
:root {--titleColor: red;}.title {color: var(--titleColor);}.sideBar {--titleColor: blue;}
Для чего используются CSS переменные?
Интересные решения:
:rootvar(--property, fallback)@supports--property-calcinitial:root {--pink-theme: {color: #6A8759;background-color: #F64778;}}body {@apply --pink-theme;}