JS властивість CSSStyleDeclaration.color


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

element.style.color - це властивість CSS, яка дозволяє встановлювати або змінювати колір тексту всередині веб-елемента. Значення можуть бути виражені у різних форматах, включаючи іменовані кольори, шістнадцяткові значення, RGB, RGBA, HSL та HSLA.

Для використання властивості color, спочатку потрібно отримати доступ до DOM-елемента за допомогою JavaScript. Це можна зробити за допомогою методів, таких як getElementById, getElementsByClassName або querySelector. Наприклад:

let element = document.getElementById('myElement');
element.style.color = 'blue';

У цьому прикладі текст всередині елемента з ідентифікатором myElement буде змінено на синій колір.

Однією з переваг використання element.style.color є можливість динамічно змінювати кольори тексту на основі певних умов або взаємодії користувача. Наприклад, можна змінювати колір тексту при наведенні миші на елемент:

let element = document.getElementById('hoverElement');
element.addEventListener('mouseover', function() {
  element.style.color = 'red';
});
element.addEventListener('mouseout', function() {
  element.style.color = 'black';
});

У цьому прикладі текст буде змінювати свій колір на червоний при наведенні миші та повертатися до чорного при відведенні миші.

Також можна використовувати умовні вирази для зміни кольору тексту залежно від певних станів або значень. Наприклад, змінювати колір тексту залежно від значення змінної:

let status = 'error';
let element = document.getElementById('statusMessage');

if (status === 'error') {
  element.style.color = 'red';
} else if (status === 'success') {
  element.style.color = 'green';
} else {
  element.style.color = 'black';
}

У цьому прикладі, якщо змінна status дорівнює 'error', текст буде червоним, якщо 'success' – зеленим, і чорним в інших випадках.

Важливо зазначити, що властивість color успадковується, тобто, встановлення кольору для батьківського елемента автоматично змінить колір тексту для всіх його дочірніх елементів, якщо не встановлено інші значення. Наприклад:

let parentElement = document.getElementById('parent');
parentElement.style.color = 'purple';

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

Зміна кольору тексту за допомогою element.style.color є дуже корисною для створення динамічних і інтерактивних веб-сторінок. Вона дозволяє гнучко керувати стилями безпосередньо з JavaScript, що робить сайти більш привабливими та зручними для користувачів.

автор: Bond

Порада

Для динамічного змінення кольору тексту на основі часу доби можна використовувати об'єкт Date. Наприклад, зробіть текст світлішим вранці і темнішим увечері:

let element = document.getElementById('greeting');
let hour = new Date().getHours();

if (hour < 12) {
  element.style.color = 'orange';
} else if (hour < 18) {
  element.style.color = 'blue';
} else {
  element.style.color = 'darkblue';
}

автор: Bond
Порада

Використовуйте властивість color в поєднанні з іншими стилями для створення більш складних ефектів. Наприклад, змінюйте колір тексту разом з його тінню для створення ефекту сяйва:

let element = document.getElementById('glowingText');
element.style.color = 'yellow';
element.style.textShadow = '0 0 10px yellow';

автор: Bond

Синтаксис

element.style.color

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
1 1 1 3.5 12 3
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 1

Приклади

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

У цьому прикладі колір тексту змінюється в залежності від довжини введеного тексту у поле вводу. Це корисно для динамічного відображення стану валідності введених даних, надаючи користувачеві візуальні підказки щодо коректності введеного тексту. Такий підхід підвищує юзабіліті форми та допомагає уникнути помилок при введенні даних.

HTML

<input type="text" id="textInput" value="текст для прикладу" placeholder="Введи щось">
<div id="message">Демонстраційний елемент</div>

JS

let inputElement = document.getElementById('textInput');
let messageElement = document.getElementById('message');

inputElement.addEventListener('input', function() {
  let textLength = inputElement.value.length;

  if (textLength < 5) {
    messageElement.style.color = 'red';
    messageElement.textContent = 'Text too short';
  } else if (textLength >= 5 && textLength <= 10) {
    messageElement.style.color = 'orange';
    messageElement.textContent = 'Text length is acceptable';
  } else {
    messageElement.style.color = 'green';
    messageElement.textContent = 'Text length is perfect';
  }
});
автор: Bond

Цей приклад демонструє динамічну зміну кольору тексту залежно від часу доби та автоматичну анімацію зміни кольорів. Такий підхід дозволяє створити привабливий візуальний ефект, що змінюється протягом дня, надаючи веб-сторінці живий і сучасний вигляд. Це може бути особливо корисно для інформаційних панелей або інтерфейсів із динамічним контентом, що оновлюється в режимі реального часу.

HTML

<div id="time">Демонстраційний елемент</div>

JS

let timeElement = document.getElementById('time');
let colors = ['#FF0000', '#FFA500', '#FFFF00', '#008000', '#0000FF', '#4B0082', '#EE82EE'];
let index = 0;

function changeColor() {
  let hour = new Date().getHours();

  if (hour >= 6 && hour < 12) {
    index = 0; // ранкові кольори
  } else if (hour >= 12 && hour < 18) {
    index = 3; // денні кольори
  } else {
    index = 5; // вечірні та нічні кольори
  }

  timeElement.style.color = colors[index];
  index = (index + 1) % colors.length;

  setTimeout(changeColor, 1000);
}

changeColor();
автор: Bond

Цей приклад дозволяє користувачам змінювати колір тексту через введення значення кольору або натискання на кнопки з попередньо визначеними кольорами. Це ілюструє гнучкість властивості element.style.color для динамічного управління стилями тексту на веб-сторінці. Користувачі можуть експериментувати з різними кольорами, що робить цей приклад зручним інструментом для навчання та практики.

автор: Bond

Коментарі

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

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

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

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

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

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

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

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

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

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

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

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