Script Valley
Tailwind CSS: Complete Course
Animations, Transitions, and Advanced PatternsLesson 6.1

Tailwind transitions and how to animate UI state changes

transition class, transition-all, transition duration, transition timing, ease-in ease-out, delay, transform utilities, hover transitions

Transitions in Tailwind

Tailwind transition classes

Apply transition once on an element and it will animate any property that changes on hover, focus, or state change.

Basic transitions

<!-- Color transition on hover -->
<button class="bg-blue-600 hover:bg-blue-700 text-white px-4 py-2 rounded
  transition-colors duration-200">
  Hover me
</button>

<!-- Shadow transition on hover -->
<div class="shadow-sm hover:shadow-lg transition-shadow duration-300 rounded-xl p-6">
  Card
</div>

<!-- Scale on hover -->
<img src="..." class="hover:scale-105 transition-transform duration-200 rounded" />

Transform utilities

<button class="hover:-translate-y-0.5 hover:shadow-md transition-all duration-200">
  Lift effect
</button>

<div class="hover:rotate-3 transition-transform duration-300">
  Tilts on hover
</div>

Duration and easing

<div class="transition-all duration-500 ease-in-out">Slow smooth</div>
<div class="transition-colors duration-75">Snappy</div>

Use transition-colors for color/background/border changes, transition-transform for scale/translate/rotate, and transition-all when multiple properties change. Avoid transition-all on elements with layout properties - it can accidentally animate width or height.

Up next

Tailwind CSS animations: animate-spin, pulse, bounce, and custom keyframes

Sign in to track progress