StealThis .dev

Blur Fade

Elements that fade in from blurred to sharp as they enter the viewport on scroll, creating a smooth reveal effect.

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

Code

Blur Fade

A smooth blur-to-sharp fade-in effect triggered as elements scroll into the viewport. Elements start blurred and transparent, then animate to full clarity.

How it works

  1. Elements begin with filter: blur(10px) and opacity: 0
  2. An IntersectionObserver watches for elements entering the viewport
  3. When visible, elements transition to blur(0) and opacity: 1
  4. Staggered delays create a cascading reveal effect

Customization

  • Adjust --blur-amount to control the initial blur intensity
  • Modify --blur-duration to change the transition speed
  • Add data-delay attributes for custom stagger timing
  • Control the trigger threshold via the IntersectionObserver options

When to use it

  • Landing page content sections
  • Card grids and feature lists
  • Portfolio galleries
  • Any content that benefits from a progressive reveal on scroll