CSS var() — значення змінної CSS


Опис

Функція var() в CSS дозволяє використовувати значення змінних CSS (custom properties) у ваших CSS оголошеннях. Вона приймає два параметри: ім'я змінної та необов'язкове значення за замовчуванням. Під час використання var(), браузер шукає значення змінної CSS за заданим ім'ям. Якщо значення змінної не знайдено, буде використано значення за замовчуванням (якщо воно вказано). Якщо значення змінної знайдено, воно буде використано як значення властивості.

Наприклад, якщо ви використовуєте змінну --margin, ви можете використовувати її значення, наприклад, var(--margin), для встановлення відступів. Значення змінної можуть бути визначені в межах властивостей CSS, CSS-файлів або inline-стилів, надаючи вам гнучкість у зміні стилів для різних елементів або сторінок.

Приклад використання:

:root {
  --text-color: #333;
}

p {
  color: var(--text-color);
}

У даному прикладі, значення --text-color визначено в кореневому елементі :root, а потім використано за допомогою функції var() для встановлення кольору тексту в елементі <p>. Це дозволяє легко змінювати колір тексту для всього сайту, змінивши значення змінної на одному місці.

автор: Bond

Загальний опис

автор: NagarD

Порада

Перед використанням функції var(), переконайтеся, що ви визначили відповідні змінні CSS.

автор: Bond

Синтаксис

var(<name>, <declaration-value>?);

Функція var може отримувати 2 значень:

<name>

Ім'я змінної CSS.

автор: Bond

<declaration-value>

Значенням може бути будь-який тип даних, який підтримується властивістю, до якої використовується функція var(). Значення змінної може бути вказано в числовому форматі, рядковому форматі, кольоровому форматі, як URL-адреса тощо.

автор: Bond

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
49 31 9.1 36 15
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
50 49 31 9.3

Приклади

+ запропонувати свій приклад у пісочниці

Цей приклад демонструє зміну кольору елемента при наведенні курсору.

HTML

<div id="description">
  <h2>Зміна кольору при наведенні</h2>
  <p>Цей приклад демонструє зміну кольору елемента при наведенні курсору.</p>
</div>

<div id="result">
  <div class="box">Елемент</div>
</div>

CSS

:root {
  --main-color: #ff0000; /* Задаємо змінну з колором */
}

.box {
  width: 200px;
  height: 200px;
  background-color: var(--main-color); /* Використовуємо змінну */
  transition: background-color 0.3s ease;
}

.box:hover {
  --main-color: #00ff00; /* Змінюємо значення змінної при наведенні */
}
автор: Bond

Цей приклад показує використання змінних для визначення фонового кольору елементів.

HTML

<div id="description">
  <h2>Використання змінних для кольорів</h2>
  <p>Цей приклад показує використання змінних для визначення фонового кольору елементів.</p>
</div>

<div id="result">
  <div class="box">Елемент 1</div>
  <div class="box colored">Елемент 2</div>
</div>

CSS

:root {
  --main-color: #ff0000; /* Задаємо змінну з колором */
}

#result {
  display: flex;
  justify-content: space-around;
}

.box {
  width: 200px;
  height: 200px;
  background-color: var(--main-color); /* Використовуємо змінну */
}

.colored {
  --main-color: #00ff00; /* Змінюємо значення змінної для другого елемента */
}
автор: Bond

Один набір правил і три різні результати. .warn перевизначає лише дві змінні; .miss показує, що var(--nope) без запасного значення не лишає колір як був, а успадковує його від батька.

HTML

<div class="card">
    <b>Звичайна картка</b> — бере --accent із :root.
</div>

<div class="card warn">
    <b>Попередження</b> — перевизначено --accent і --accent-bg на самій картці.
</div>

<div class="note">
    Батьківський колір тексту тут червоний.
    <span class="miss">А цей рядок просить color: var(--nope) — і стає червоним,
    бо оголошення не ігнорується, а успадковується.</span>
</div>

CSS

:root {
    --accent: #2f6f9f;
}

body {
    font-family: sans-serif;
    font-size: 15px;
    padding: 24px;
}

.card {
    border-left: 6px solid var(--accent);
    background: var(--accent-bg, #f2f6f9);
    padding: 14px 18px;
    margin-bottom: 14px;
}

.card b {
    color: var(--accent);
}

.warn {
    --accent: #b0561f;
    --accent-bg: #fdf3ec;
}

.note {
    color: #b03030;
    padding: 14px 18px;
    border: 1px dashed #cfd4d9;
}

.miss {
    color: var(--nope);
}
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле веде сходинками (розділ → тип → сторінка), а хибний ключ підкреслить хвилею.
[[!sandbox/S0oh1hBm]] Живий приклад окремим рядком — саме вікно результату. Той самий ключ зі знаком !: наберіть [[! і дійдіть сходинками до потрібної сторінки, список покаже її приклади.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Правка
Зворотний зв'язок
Вхід