Dark Theme Example
El evento 'storage' del objeto window cambiará el theme si en el localStorage 'el valor' de la key 'data-theme' es cambiado desde otra pestaña. (Abre 2 veces esta pestaña y en una de las pestañas cambia el theme, verás que el cambio del theme también se hará en la otra pestaña)
Icono del sol 🌞 en light theme, icono de la luna 🌛 en dark theme.
Este código CSS y JS es crítico, o sea debe ponerse en el HTML para que funcione al 100% y no lo coloques dentro del evento 'DOMContentLoaded' porque si la web es muy grande entonces tardará en estar Loaded y por lo tanto tardará en aplicarse el DarkTheme (o DarkMode le llaman también).