Переменные в CSS – использование функции var()

Переменные CSS задаются с помощью функции var(). Для их использования необходимо сначала задать переменную в одном из селекторов, а затем применить ее в качестве значения свойства для элемента. Это похоже на понятие константа в некоторых языках программирования.

Пример:

.wrapper {
  --maincolor: #ee4f4f;
}
button {
  background: var(--info-color);
}

Здесь мы в произвольном селекторе wrapper задали переменную maincolor (ее имя всегда обозначается двумя дефисами впереди), а затем использовали ее, чтобы задать фоновый цвет для кнопки button.

Таким образом можно использовать переменные для хранения повторяющихся величин. Наиболее удобно их применять для повторяющихся цветов, поскольку для сайта обычно используется несколько повторяющихся значений цветов.

Синтаксис

var( <переменная> [, <значение> ]? )

Как уже сказано выше имя переменной должно начинаться с двух дефисов. Второй параметр является резервным и применяется, если переменная не определена.

Пример использования

Пусть у нашего сайта будут хедер, футер, а также кнопка и заголовок. Все они должны выводиться в едином цвете.

Без использования переменных нам пришлось бы каждый раз копировать значение нужного цвета при стилизации каждого нового элемента. В нашем же случае мы один раз задали цвет: --main-color: #ea720b, а затем его используем. Таким образом при необходимости можно поменять цвет всех элементов просто изменив константу.

See the Pen
var
by Андрей (@adlibi)
on CodePen.

С помощью переменных (еще их называют кастомные свойства) можно задавать любые значения: величину шрифта или его семейство, размеры элемента и т.д.

Область видимости

Область видимости переменной ограничен селектором, в котором она определена. В том числе она будет доступна и в контейнерах, вложенных в контейнер с этим селектором. То есть применимо наследование.

Чтобы определить переменные с глобальной видимостью нужно использовать псевдокласс :root (соответствует  элементу <html>). Например:

:root {
 --main-color: #ea720b;
}

Резервные значения

Как уже говорилось, резервные значения используются, когда переменная не определена или браузер их не поддерживает.

При этом в качестве резервного значения можно использовать вложенные значения, например:

.h2 {
color: var(--main-color, var(--black, #000000));
}

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

Сервис CanIUse показывает, что в настоящее время уровень поддержки это свойства составляет 66,2%. При этом оно поддерживается последними версиями основных браузеров, Google Chrome, FireFox и т.д., поэтому считаю, его можно использовать при работе с сайтами.

Оцените статью
Инструкции для Web
Добавить комментарии