← Back to Lesson

⏱️ Staggered Animations

Create choreographed sequences by delaying animations for multiple elements. Perfect for list reveals, galleries, and progressive disclosure.

1. Fade In Up Cards

Cards appear one after another from bottom to top.

Card 1
Card 2
Card 3
Card 4
Card 5
Card 6
.card { opacity: 0; animation: fadeInUp 0.6s ease-out forwards; } .card:nth-child(1) { animation-delay: 0.1s; } .card:nth-child(2) { animation-delay: 0.2s; } .card:nth-child(3) { animation-delay: 0.3s; }

2. Scale Bounce In

Elements pop in with a bouncy scale animation.

@keyframes scaleBounce { 0% { opacity: 0; transform: scale(0.3); } 50% { transform: scale(1.05); } 100% { opacity: 1; transform: scale(1); } } .bubble:nth-child(n) { animation-delay: calc(n * 0.1s); }

3. Alternating Slide Directions

Odd items slide from left, even from right.

Item 1 (from left)
Item 2 (from right)
Item 3 (from left)
Item 4 (from right)
.row-item:nth-child(odd) { animation: slideFromLeft 0.6s forwards; } .row-item:nth-child(even) { animation: slideFromRight 0.6s forwards; } .row-item:nth-child(n) { animation-delay: calc(n * 0.1s); }

4. Rotating Entrance

Icons rotate in with staggered timing.

🎨
🚀
@keyframes rotateIn { from { opacity: 0; transform: rotate(-180deg) scale(0.5); } to { opacity: 1; transform: rotate(0deg) scale(1); } } .icon-box:nth-child(n) { animation-delay: calc(n * 0.15s); }

5. Progressive Bar Loading

Progress bars grow in sequence.

HTML/CSS - 95%
JavaScript - 85%
Design - 90%
Animation - 80%
@keyframes barGrow { from { width: 0; opacity: 0; } to { width: 100%; opacity: 1; } } .progress-bar:nth-child(n) { animation-delay: calc((n - 1) * 0.2s); }

💡 Key Takeaways