Lovable
ui
Dark Mode Not Toggling or Persisting
Dark mode toggle doesn't work or resets on page reload. Classes like 'dark:bg-gray-900' don't apply when dark mode is enabled. Theme preference not saved.
Dark mode requires class management on root element and localStorage persistence. Tailwind dark mode has multiple strategy options.
Common Causes
- tailwind.config.js darkMode not set to 'class' or 'media'
- Dark class not added to html element
- Dark mode preference not saved to localStorage
- Page doesn't check saved preference on load
- CSS specificity issue with dark mode selectors
How to Fix It
Set darkMode strategy in tailwind.config.js:
export default {
darkMode: 'class'
}Toggle and persist:
function toggleDarkMode() {
document.documentElement.classList.toggle('dark');
localStorage.setItem('theme',
document.documentElement.classList.contains('dark') ? 'dark' : 'light'
);
}
// On load
if (localStorage.getItem('theme') === 'dark') {
document.documentElement.classList.add('dark');
}Real developers can help you.
You don't need to be technical. Just describe what's wrong and a verified developer will handle the rest.
Get Help