StealThis .dev

Morphing Text

Text that smoothly morphs between different words using an SVG filter blur technique for seamless transitions.

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

Code

Morphing Text

Text that smoothly morphs between different words using a clever SVG filter blur technique. Two overlapping text elements cross-fade while a blur filter makes the transition appear organic and fluid.

How it works

  1. Two text elements are stacked on top of each other
  2. An SVG feGaussianBlur filter is applied to the container
  3. As one text fades out and the other fades in, the blur makes the letter forms appear to melt and reform
  4. A high contrast CSS filter on the parent sharpens the blurred edges back into crisp text
  5. JavaScript alternates between texts on a timer

The blur-morph trick

The key insight: when you blur text that is fading out while another is fading in, the overlapping blurred shapes merge visually. Applying a high contrast filter then snaps the merged blur back into sharp shapes — creating the illusion of one word morphing into another.

When to use it

  • Hero sections cycling through product features
  • Creative portfolio headings
  • Any text that needs premium animated transitions