Blur
Also called backdrop blur, background blur, or CSS blur
A softening effect made with CSS filter: blur() on an element itself, or backdrop-filter: blur() on whatever shows through it from behind.
import { useState } from 'react';
const episodes = [
{ title: 'The Long Night', image: '/episodes/long-night.jpg' },
{ title: 'Crossing the Ice', image: '/episodes/crossing.jpg' }
];
export function EpisodeGuide() {
return (
<div className='h-96 overflow-y-auto rounded-2xl border'>
{/* backdrop-blur blurs what scrolls behind the header. The 70% fill keeps text readable,
and stays nearly solid where backdrop-filter isn't supported. */}
<header className='sticky top-0 z-10 border-b bg-background/95 px-6 py-4 font-semibold backdrop-blur-md backdrop-saturate-180 supports-backdrop-filter:bg-background/70'>
Season 2
</header>
<ul className='space-y-6 p-6'>
{episodes.map((episode) => (
<SpoilerImage key={episode.title} {...episode} />
))}
</ul>
</div>
);
}
// filter: blur hides the frame itself until the viewer asks to see it.
function SpoilerImage({ title, image }: { title: string; image: string }) {
const [revealed, setRevealed] = useState(false);
return (
<li>
<button
type='button'
aria-pressed={revealed}
aria-label={revealed ? `Hide ${title} still` : `Reveal ${title} still`}
onClick={() => setRevealed(!revealed)}
className='block w-full overflow-hidden rounded-xl'
>
<img
src={image}
alt=''
className={`aspect-video w-full object-cover transition-[filter] duration-300 ease-out ${revealed ? 'blur-none' : 'blur-xl'}`}
/>
</button>
<p className='mt-2 text-sm font-medium'>{title}</p>
</li>
);
}Make the top navigation bar sticky with a white background at 70% opacity and backdrop-filter: blur(12px) saturate(180%), so page content blurs as it scrolls underneath. Add a 1px bottom border at 8% black, and fall back to a solid white background where backdrop-filter is not supported.
Paste into Layerwise or any AI coding tool.
Blur explained
Blur softens pixels so details melt together. CSS has two versions. filter: blur(8px) blurs the element itself and everything inside it. backdrop-filter: blur(12px) keeps the element sharp and blurs only what shows through it from behind, which is how frosted headers, sidebars, and sheets keep content readable while it scrolls underneath.
Use backdrop blur on a translucent surface, such as a sticky header with a background at 60 to 80% opacity, so the page stays visible but quiet. Use a plain blur for out-of-focus backgrounds, privacy placeholders, or spoilers that sharpen on click.
Blur is one of the more expensive effects to draw, especially over large or constantly changing areas, so keep blurred regions small and avoid animating the radius on big elements. Always pair backdrop blur with a semi-opaque background color, so text keeps enough contrast if the blur does not render.
Often confused with
- Blur in
- Blur in is an entrance animation that starts blurry and sharpens as an element appears. A blur effect is a lasting style that stays on screen.
- Glassmorphism
- Glassmorphism is a full visual style that combines backdrop blur with a translucent fill, a light border, and a colorful background.
Related terms
All termsGlassmorphism
A visual style where panels look like frosted glass: translucent, blurred backgrounds with a thin light border over colorful shapes.
Sticky header
A top bar that stays pinned to the top of the screen while the page scrolls underneath it, so navigation is always one click away.
Blur in
An entrance animation where text or an image starts blurred and transparent, then sharpens into focus as it appears.
Liquid glass
Apple’s translucent interface material from 2025 that bends, reflects, and tints the content behind it, with bright highlights along its edges.
Build it with Layerwise
Describe your app, watch it run in a live preview, and publish it with a database, storage, and sign-in built in.











