Функция var в CSS
Функция var()
позволяет использовать браузерные переменные в
CSS, делая стили более гибкими и удобными в управлении.
Кастомные свойства
Кастомные свойства, также известные как CSS-переменные, позволяют задавать значения, которые можно
переиспользовать в различных частях стилей. Они объявляются с префиксом --
и могут быть
использованы через функцию var()
.
Синтаксис объявления кастомных свойств
Кастомные свойства объявляются внутри блока правил CSS, обычно в корневом селекторе :root
, чтобы они
были доступны глобально.
:root {
--main-color: #3498db;
--secondary-color: #2ecc71;
--padding: 10px;
}
Синтаксис использования функции var()
Функция var()
используется для доступа к значению кастомного свойства. Синтаксис следующий:
element {
property: var(--custom-property, fallback-value);
}
-custom-property
имя кастомного свойстваfallback-value
(необязательно) значение по умолчанию, которое будет использовано, если кастомное свойство не задано
Пример использования var()
:root {
--main-color: #3498db;
}
button {
background-color: var(--main-color);
color: white;
padding: 10px 20px;
border: none;
cursor: pointer;
}
В этом примере переменная --main-color
используется для задания фона кнопки.
Преимущества использования кастомных свойств
Кастомные свойства позволяют легко изменять значения, используемые в нескольких местах. Например, изменение
значения --main-color
в одном месте автоматически обновит цвет во всех элементах, которые его
используют.
С помощью кастомных свойств можно легко создавать и переключать темы для веб-страниц.
:root {
--main-bg-color: white;
--main-text-color: black;
}
body.dark-theme {
--main-bg-color: black;
--main-text-color: white;
}
body {
background-color: var(--main-bg-color);
color: var(--main-text-color);
}
Кастомные свойства позволяют хранить значения, такие как размеры и отступы, в одном месте, что упрощает управление ими.
:root {
--padding: 10px;
}
.container {
padding: var(--padding);
}
.box {
padding: var(--padding);
}
Вложенные кастомные свойства
Кастомные свойства могут использоваться внутри других кастомных свойств для создания сложных значений.
:root {
--base-color: #3498db;
--border-color: var(--base-color);
}
.element {
border: 1px solid var(--border-color);
}