<header>
  <h2 class="title">Document.head Property</h2>
  <p class="description">Дозволяє динамічно змінювати стилі веб-сторінки.</p>
</header>
<main>
  <div class="result">
    <label for="backgroundColor">Виберіть колір фону:</label>
    <select id="backgroundColor">
      <option value="lightblue">Світло-блакитний</option>
      <option value="lightpink">Світло-рожевий</option>
      <option value="lightgreen">Світло-зелений</option>
    </select>
    <button onclick="applyStyles()">Застосувати стилі</button>
  </div>
</main>
body {
  font-size: 16px;
  line-height: 1.5;
  font-family: monospace;
}

header {
  background-color: #f1f1f1;
  margin-bottom: 25px;
  padding: 15px;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  -moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

header h2.title {
  padding-bottom: 15px;
  border-bottom: 1px solid #999;
}

header p.description {
  font-style: italic;
  color: #222;
}

.result {
  background-color: #f8f8f8;
  padding: 15px;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  -moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

select, button {
  margin-top: 10px;
  margin-right: 10px;
}
function applyStyles() {
  var bgColor = document.getElementById('backgroundColor').value;
  
  // Створення нового стильового елементу
  var style = document.createElement('style');
  style.type = 'text/css';
  style.innerHTML = `body { background-color: ${bgColor}; }`;
  
  // Видалення попередніх стилів, якщо такі існують
  var previousStyle = document.head.getElementsByTagName('style')[0];
  if (previousStyle) {
    document.head.removeChild(previousStyle);
  }
  
  // Додавання нового стильового елементу до <head>
  document.head.appendChild(style);
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.