JavaRush /Курси /Frontend SELF UA /Вступ до CSS-змінних

Вступ до CSS-змінних

Frontend SELF UA
Рівень 31 , Лекція 0
Відкрита

1.1 Що таке CSS-змінні?

CSS-змінні, також відомі як власні властивості (custom properties), — це змінні, що оголошуються в CSS і можуть зберігати значення, такі як кольори, розміри, шрифти та інші CSS-атрибути. Вони надають круті можливості для покращення гнучкості та підтримки стилів на веб-сторінках.

Що таке CSS-змінні?

CSS-змінні — це змінні, які можуть зберігати значення CSS-властивостей і використовуватися повторно в різних ділянках стилів. Вони визначаються за допомогою подвійного дефісу (--), і їх можна задавати в будь-якому селекторі, але зазвичай вони визначаються в кореневому селекторі :root, щоб зробити їх доступними у всьому документі.

Приклад:

CSS
    
      :root {
        --main-color: #3498db;
        --secondary-color: #2ecc71;
        --font-size: 16px;
      }
    
  

Основні характеристики CSS-змінних:

  1. Повторне використання: CSS-змінні дозволяють визначити значення один раз і використовувати його багаторазово у різних частинах CSS-коду. Це допомагає уникнути дублювання та спрощує управління стилями.
  2. Гнучкість: значення CSS-змінних може змінюватися залежно від умов, таких як стан елемента чи медіа-запити. Це дозволяє створювати більш адаптивні та динамічні стилі.
  3. Наслідування: CSS-змінні успадковуються від батьківських елементів до дочірніх, що спрощує управління та організацію стилів.
  4. Керованість: використання змінних полегшує підтримку коду, адже зміни значень змінних автоматично відображаються на всіх елементах, що використовують ці змінні.

1.2 Приклади використання CSS-змінних

Приклад використання CSS-змінних у JavaScript:

JavaScript
    
      document.documentElement.style.setProperty('--main-color', '#e74c3c');
    
  

Приклад 1: Визначення та використання змінних

CSS
    
      :root {
        --main-bg-color: #f0f0f0;
        --main-text-color: #333;
        --primary-color: #3498db;
      }

      body {
        background-color: var(--main-bg-color);
        color: var(--main-text-color);
      }

      a {
        color: var(--primary-color);
      }

      a:hover {
        color: darken(var(--primary-color), 10%);
      }
    
  
HTML
    
      <body>
        <p>Це абзац.</p>
        <a href="#">Це посилання</a>
      </body>
    
  

Пояснення:

  • У цьому прикладі визначені три змінні: --main-bg-color, --main-text-color і --primary-color
  • Ці змінні використовуються для задання кольору фону, тексту і посилань

1.3 Зміна значень змінних у JavaScript

У цьому прикладі змінні використовуються для задання теми оформлення сторінки. При натисканні на кнопку значення змінних змінюються, що призводить до зміни фону і кольору тексту:

CSS
    
      :root {
        --main-bg-color: #f0f0f0;
        --main-text-color: #333;
      }

      body {
        background-color: var(--main-bg-color);
        color: var(--main-text-color);
      }
    
  
HTML
    
      <button id="toggle-theme">Змінити тему</button>
      <p>Це абзац.</p>
    
  
JavaScript
    
      document.getElementById('toggle-theme').addEventListener('click', () => {

        const root = document.documentElement;

        if (root.style.getPropertyValue('--main-bg-color') === '#f0f0f0') {
            root.style.setProperty('--main-bg-color', '#333');
            root.style.setProperty('--main-text-color', '#f0f0f0');

        } else {
            root.style.setProperty('--main-bg-color', '#f0f0f0');
            root.style.setProperty('--main-text-color', '#333');
        }
      });
    
  
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ