Принятие темной стороны: включение темного режима с предпочтительной цветовой схемой Bootstrap

Привет, уважаемый веб-разработчик! Темный режим становится все более популярным, и его внедрение на ваш веб-сайт может значительно улучшить взаимодействие с пользователем. В этой статье мы рассмотрим различные способы включения темного режима на основе функции предпочтения цветовой схемы в Bootstrap. Итак, приступим!

Но сначала давайте быстро разберемся, что означает «предпочитает цветовую схему». Медиа-функция prefers-color-scheme — это медиа-запрос CSS, который позволяет проверить предпочтения пользователя в отношении светлой или темной цветовой схемы. Это мощный инструмент, позволяющий адаптировать внешний вид вашего сайта в соответствии с предпочтениями пользователя.

Теперь давайте рассмотрим некоторые способы включения темного режима с помощью Bootstrap и prefers-color-scheme:

Метод 1: переменные CSS

Один из способов включить темный режим — использовать переменные CSS. Bootstrap предоставляет набор переменных CSS, которые вы можете использовать для легкого переключения между светлым и темным режимами. Вот пример:

:root {
  --color-primary: #007bff;
  --color-background: #ffffff;
  /* Other CSS variables */
}
@media (prefers-color-scheme: dark) {
  :root {
    --color-primary: #ffffff;
    --color-background: #121212;
    /* Other dark mode CSS variables */
  }
}

В этом примере мы определяем переменные CSS для светлого режима внутри :root, а затем переопределяем их значениями темного режима с помощью медиа-запроса prefers-color-schemeр>

Метод 2: утилиты темного режима Bootstrap

В Bootstrap 5 появились встроенные утилиты для темного режима. Добавив класс darkк элементу body, вы можете переключить весь сайт в темный режим. Вот как это можно сделать:

<!DOCTYPE html>
<html lang="en">
<head>
  <!-- Include Bootstrap CSS -->
</head>
<body class="dark">
  <!-- Your website content -->
</body>
</html>

Добавляя класс darkк элементу body, вы активируете утилиты темного режима Bootstrap, которые автоматически настраивают цветовую схему вашего веб-сайта.

Метод 3: JavaScript и локальное хранилище

Если вы хотите предоставить пользователям возможность переключаться между светлым и темным режимами, вы можете использовать JavaScript и API localStorageдля сохранения их предпочтений. Вот пример:

const toggleSwitch = document.querySelector('.toggle-switch');
toggleSwitch.addEventListener('change', function() {
  document.body.classList.toggle('dark');
  const isDarkMode = document.body.classList.contains('dark');
  localStorage.setItem('darkMode', isDarkMode);
});
// Restore dark mode preference from local storage
const isDarkMode = localStorage.getItem('darkMode') === 'true';
document.body.classList.toggle('dark', isDarkMode);

В этом примере мы добавляем прослушиватель событий к элементу переключателя. При переключении переключателя мы добавляем или удаляем класс darkк элементу bodyи сохраняем предпочтения пользователя в localStorage.

Это всего лишь несколько способов включить темный режим на основе предпочтительной цветовой схемы с помощью Bootstrap. Не стесняйтесь изучить эти методы и найти тот, который лучше всего соответствует вашим потребностям. Приятного кодирования!