Transitions & Animation
Utilities for controlling the delay of CSS transitions.
Use the delay-{amount}
utilities to control an element’s transition-delay.
Hover each button to see the expected behaviour
delay-150
delay-300
delay-700
<button class="transition delay-150 duration-300 ease-in-out ...">Button A</button>
<button class="transition delay-300 duration-300 ease-in-out ...">Button B</button>
<button class="transition delay-700 duration-300 ease-in-out ...">Button C</button>
Tailwind lets you conditionally apply utility classes in different states using variant modifiers. For example, use hover:delay-300
to only apply the delay-300
utility on hover.
<div class="transition duration-300 delay-150 hover:delay-300">
<!-- ... -->
</div>
For a complete list of all available state modifiers, check out the Hover, Focus, & Other States documentation.
You can also use variant modifiers to target media queries like responsive breakpoints, dark mode, prefers-reduced-motion, and more. For example, use md:delay-300
to apply the delay-300
utility at only medium screen sizes and above.
<div class="transition duration-300 delay-150 md:delay-300">
<!-- ... -->
</div>
To learn more, check out the documentation on Responsive Design, Dark Mode and other media query modifiers.
By default, Tailwind provides eight general purpose transition-delay utilities. You can customize these values by editing theme.transitionDelay
or theme.extend.transitionDelay
in your tailwind.config.js
file.
module.exports = {
theme: {
extend: {
transitionDelay: {
'0': '0ms',
'2000': '2000ms',
}
}
}
}
Learn more about customizing the default theme in the theme customization documentation.
If you need to use a one-off transition-delay
value that doesn’t make sense to include in your theme, use square brackets to generate a property on the fly using any arbitrary value.
<div class="delay-[2000ms]">
<!-- ... -->
</div>
Learn more about arbitrary value support in the arbitrary values documentation.