En Tailwind v3, las animaciones personalizadas se configuran directamente dentro de
tailwind.config.js
usando las propiedades
theme.extend.keyframes
y theme.extend.animation
.
tailwind.config.js
.extend
.animate-[nombre]
en tu HTML.
module.exports = {
theme: {
extend: {
keyframes: {
blink: {
'0%, 100%': { opacity: '1' },
'50%': { opacity: '0' }
}
},
animation: {
blink: 'blink 1s ease-in-out infinite'
}
}
}
}
✅ Resultado:
En Tailwind v4 puedes definir animaciones personalizadas directamente en tu archivo CSS usando la regla
@theme
.
Esto te permite crear animaciones reutilizables sin necesidad de editarlas en tailwind.config.js
.
index.css
).@theme
para definir tus variables y keyframes.animate-nombre
.
@theme {
--animate-blink: blink 1s ease-in-out infinite;
@keyframes blink {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0;
}
}
}
✅ Resultado:
Puedes usar el plugin @midudev/tailwind-animations
para acceder a un conjunto de animaciones listas
para usar como clases animate-*
.
Este plugin es útil si deseas agregar efectos sin tener que definir manualmente los keyframes
en tu
configuración.
tailwind.config.js
si aún no existe.npm install @midudev/tailwind-animations
plugins
.animate-wobble
.
import animations from '@midudev/tailwind-animations'
export default {
// otras opciones...
plugins: [
animations
]
}
animate-wobble | animate-rubber-band | animate-dancing |
---|---|---|
Wobble
|
Rubber Band
|
Dancing
|
En Tailwind v4 puedes usar el plugin @midudev/tailwind-animations
directamente en tu archivo
index.css
gracias al nuevo sistema basado en CSS y plugins con @plugin
. Esto te permite importar animaciones
sin modificar el archivo de configuración.
index.css
si aún no lo tienes.npm install @midudev/tailwind-animations
index.css
usando @plugin
.animate-wobble
directamente en tu HTML.@import "tailwindcss";
@plugin '@midudev/tailwind-animations';
animate-wobble | animate-rubber-band | animate-dancing |
---|---|---|
Wobble
|
Rubber Band
|
Dancing
|