Назад Вперед Зміст


🧪 Об'єкт style та його властивості


Є два способи змінювати стиль елемента за допомогою JavaScript. Перший — встановлення властивості CSS безпосередньо у елементі. Другий — додавання або видалення значень класу.

Приклад 1: Зміна кольру тексту та напису на кнопці

При натисканні кнопки змінюємо колір букви (стиль) і сам текст кнопки.

A
// Отримуємо елементи
const btn = document.getElementById('demo1Btn');
const letter = document.getElementById('letterA');

btn.addEventListener('click', function() {
    // змінюємо колір через style
    letter.style.color = '#c44536';
    letter.style.fontSize = '3.5rem';
    this.textContent = 'Колір змінено!';
});
Приклад 2: Портрет у рамці (classList.toggle)

Натисни — збільшиться до 400px, з'явиться товста золота рамка. Повторно — повернеться.

портрет
const img = document.getElementById('portraitImg');
const btn2 = document.getElementById('frameBtn');

btn2.addEventListener('click', function() {
    // перемикаємо клас — API classList.toggle
    img.classList.toggle('large-frame');
    this.textContent = img.classList.contains('large-frame')
        ? 'Початковий розмір'
        : 'Портрет у рамці';
});

CSS-клас .large-frame змінює розміри та рамку. Рамка тепер працює.

Приклад 3: Поява/зникнення (display:none)

Кнопка ховає/показує кота через style.display.

😺
const catBlock = document.getElementById('catBlock');
const catBtn = document.getElementById('catBtn');

catBtn.addEventListener('click', function() {
    if (catBlock.style.display === 'none') {
        catBlock.style.display = 'flex';
        this.textContent = 'Сховати';
    } else {
        catBlock.style.display = 'none';
        this.textContent = 'Показати';
    }
});

📚 Властивості об'єкта style та API classList

Style JavaScript vs CSS

Імена властивостей: дефіс забирається, наступне слово з великої.

CSSJavaScript
background-attachmentbackgroundAttachment
font-familyfontFamily
z-indexzIndex
floatcssFloat (зарезервоване слово)

API classList

div.classList.add('foo', 'bar');
div.classList.remove('foo');
div.classList.toggle('active');
Демо classList.add / remove

Кнопки додають або видаляють клас у квадрата.

block.classList.add('red-bg');
block.classList.remove('red-bg');
block.classList.toggle('blue-bg');
Приклад display: none (сховати абзац)

Це абзац, який можна сховати або показати знову. Корисно для спойлерів!

hideBtn.onclick = () => 
    paragraph.style.display = 'none';
showBtn.onclick = () => 
    paragraph.style.display = 'block';
Стилізація через style (inline)

Мій текст можна змінити

text.style.fontSize = '2rem';
text.style.color = '#1e56c0';
text.style.backgroundColor = '#ffecb3';

Таблиця відповідності CSS / JS

CSSJavaScript
background-attachmentbackgroundAttachment
font-familyfontFamily
z-indexzIndex
floatcssFloat
Toggle класу

Натискай — клас "foo" додається/видаляється.

елемент
div.classList.toggle('foo');

Назад Вперед Зміст