- Прорыв в 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 переменные?
Интересные решения:
:root
var(--property, fallback)
@supports
--property-calc
initial
:root {
--pink-theme: {
color: #6A8759;
background-color: #F64778;
}
}
body {
@apply --pink-theme;
}