POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Temas Personalizados en Tailwind CSS v4 – @custom-variant (1/2)

Temas Personalizados en Tailwind CSS v4 con @custom-variant (1/2)

Publicado el 24/08/2025

Create Custom Themes in Tailwind CSS v4 – @custom-variant (1/2)

Los themes definen el estilo visual y la disposición de un sitio web para mejorar la experiencia de usuario. En este artículo explico cómo crear temas personalizados con Tailwind CSS v4 usando la directiva @custom-variant y cómo integrarlos en tu proyecto.

Nota sobre el proceso de creación del artículo: utilicé herramientas de IA para ayudar a estructurar y redactar el texto, pero todo el código fue escrito, probado y revisado por mí.

1. Añadir variantes personalizadas con @custom-variant

Puedes crear nuevos temas o estilos condicionales mediante variantes personalizadas declaradas con la directiva @custom-variant. Puntos importantes: definir las declaraciones en index.css, habilitar modo oscuro creando una variante dark y activarla usando el atributo data-theme, y mantener una nomenclatura consistente usando nombres cortos como dark y prefijos como theme- para otros temas.

Método 1 sintaxis anidada

Ejemplo de declaración anidada en index.css: @custom-variant dark { &:where([data-theme=dark] *) { @slot; } } @custom-variant theme-midnight { &:where([data-theme=midnight] *) { @slot; } }

Ejemplo para aplicar estilos solo en dispositivos con soporte hover: @custom-variant any-hover { @media (any-hover:hover) { &:hover { @slot; } } }

Método 2 sintaxis atajo

Cuando no necesitas anidar otras reglas puedes usar la sintaxis corta: @custom-variant dark (&:where([data-theme=dark] *)); @custom-variant theme-midnight (&:where([data-theme=midnight] *));

2. Aplicar estilos específicos en el marcado

Una vez que data-theme está establecido puedes usar el prefijo de variante personalizada en tus utilidades. Ejemplo de uso en el body: <body class=bg-white theme-dark:bg-black-800 theme-midnight:bg-purple-800>

3. Establecer temas mediante el atributo data-theme

Activa un tema estableciendo el atributo data-theme en la etiqueta html. Ejemplos: <html data-theme=midnight lang=en> <html data-theme=light lang=en> <html data-theme=dark lang=en> Puedes cambiar dinámicamente el valor para alternar temas.

4. Bonus: Componente para cambiar temas dinámicamente

Un patrón sencillo en React consiste en mantener el tema actual en estado y sincronizar el atributo data-theme en document.documentElement. Fragmento ilustrativo: const themes = [ { name: light }, { name: dark }, { name: midnight } ]; useEffect(() => { document.documentElement.setAttribute(data-theme, theme.name); }, [theme]); En un select el handleChange puede actualizar el índice según el valor seleccionado y con ello activar el tema correspondiente.

Próximamente publicaré un componente SwitchTheme más completo y personalizable.

Sobre Q2BSTUDIO

Q2BSTUDIO es una empresa de desarrollo de software que ofrece soluciones de aplicaciones a medida y software a medida para empresas de todos los tamaños. Somos especialistas en inteligencia artificial e ia para empresas, desarrollamos agentes IA, integraciones con Power BI y servicios inteligencia de negocio para convertir datos en decisiones accionables. Además ofrecemos ciberseguridad, servicios cloud aws y azure y consultoría para arquitecturas seguras y escalables. Si buscas servicios profesionales en aplicaciones a medida, inteligencia artificial, ciberseguridad, agentes IA, servicios cloud aws y azure, o power bi, Q2BSTUDIO está listo para ayudarte a diseñar y construir soluciones a medida.

Palabras clave incluidas para mejorar posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ia para empresas, agentes IA, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, power bi.

Contacto y enlaces

YouTube https://www.youtube.com/@vrauuss-softwares

GitHub https://github.com/vrauuss-softwares

Blog y artículos próximamente disponibles en nuestros canales y en plataformas como DEV.to

Referencias

Documentación Tailwind CSS Adding custom variants https://tailwindcss.com/docs/adding-custom-styles#adding-custom-variants

MDN Customizable select elements https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Forms/Customizable_select

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio