StealThis .dev

Animated List

A list component where items animate in with staggered entrance effects — slide and fade from alternating directions for a dynamic reveal.

Open in Lab
css javascript vue svelte
Targets: TS JS HTML React Vue Svelte

Code

Animated List

A list where items stagger in with slide + fade animations. Each item enters from a different direction based on its index, creating a lively cascade effect when the list scrolls into view.

How it works

  1. Items start with opacity: 0 and a transform offset (left, right, or bottom).
  2. An IntersectionObserver watches each item and adds a .visible class when it enters the viewport.
  3. CSS @keyframes handle the slide-in, with each item’s animation-delay set via a CSS custom property --i.

Features

  • Staggered entrance with configurable delay
  • Items slide from alternating directions (left, right, bottom)
  • IntersectionObserver for scroll-triggered animation
  • Respects prefers-reduced-motion