Le mode sombre et le mode nuit sont des incontournables pour les sites Web modernes. Ils améliorent l'accessibilité et donnent aux utilisateurs la possibilité de choisir leur look préféré. Voyons comment vous pouvez créer cette fonctionnalité à l'aide de Tailwind CSS et des variables CSS.
Commencez par définir les couleurs de vos thèmes. Ces variables CSS seront à l'intérieur d'une classe parent pour faciliter le changement de thème.
/* Light Theme (Default) */ :root { --bg-color: #ffffff; --text-color: #000000; } /* Dark Theme */ .theme-dark { --bg-color: #000000; --text-color: #ffffff; } /* Solarized Theme */ .theme-solarized { --bg-color: #002b36; --text-color: #839496; }
Tailwind facilite l'utilisation des variables CSS pour le style.
<div> <h2> Adding JavaScript for Dynamic Theme Switching </h2> <p>Here’s the JavaScript to handle theme changes dynamically:<br> </p> <pre class="brush:php;toolbar:false">const themeSelect = document.getElementById("theme-select"); const rootElement = document.documentElement; // Listen for dropdown changes themeSelect.addEventListener("change", (event) => { const selectedTheme = event.target.value; // Remove all theme classes rootElement.classList.remove("theme-light", "theme-dark", "theme-solarized"); // Add the selected theme class rootElement.classList.add(selectedTheme); }); // Set default theme on load window.addEventListener("DOMContentLoaded", () => { rootElement.classList.add("theme-light"); });
Changement de thème en temps réel en action
Lorsque les utilisateurs choisissent un thème dans la liste déroulante, les couleurs d'arrière-plan et du texte changent instantanément. Cette mise à jour dynamique rend l'expérience transparente et interactive.
Pourquoi cette approche est géniale
Montez d'un cran en enregistrant le thème sélectionné afin qu'il persiste d'une session à l'autre.
// Save the theme themeSelect.addEventListener("change", (event) => { const selectedTheme = event.target.value; rootElement.classList.remove("theme-light", "theme-dark", "theme-solarized"); rootElement.classList.add(selectedTheme); localStorage.setItem("theme", selectedTheme); }); // Load the saved theme window.addEventListener("DOMContentLoaded", () => { const savedTheme = localStorage.getItem("theme") || "theme-light"; rootElement.classList.add(savedTheme); });
Conseils supplémentaires pour le mode sombre et le mode nuit
Avec Tailwind CSS et les variables CSS, la création d'un mode sombre dynamique ou d'un mode nuit est simple et efficace. Essayez-le et voyez comment il transforme l'expérience utilisateur de votre site Web !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!