27 / 33
All 33 in 33 Tailwind CSS Card Hover Effects
- 01Tailwind 3D Tilt & Parallax Card with Depth Layers
- 02Tailwind Glowing Gradient & Glassmorphic Border Card
- 03Tailwind Image Zoom Card with Slide-Up Content Reveal
- 04Tailwind 3D Flip Card (Front to Back) with backface-visibility
- 05Tailwind Sibling De-emphasis Pricing Grid with has-hover
- 06Tailwind Minimalist Elevation Card with Layered Dynamic Shadows
- 07Tailwind Elastic Lift Card with Spring Cubic-Bezier
- 08Tailwind Animated Conic Gradient Border Card with @property
- 09Tailwind Stacked Layer Reveal Card (Fanned Risograph Deck)
- 10Tailwind Holographic Foil Shimmer Card with mix-blend-mode
- 11Tailwind Curtain Reveal Card (Parting Velvet Halves)
- 12Tailwind Corner Peel Card with clip-path Triangles
- 13Tailwind Neon Sign Card with Layered Text-Shadow Glow
- 14Tailwind CRT Scanline Terminal Card with Sweeping Beam
- 15Tailwind Depth Parallax Landscape Card with Layer Multipliers
- 16Tailwind Cursor Spotlight Card with Masked Border Highlight
- 17Tailwind 3D Tilt Product Card with Specular Glare
- 18Tailwind Slide-Up Panel Card with Peek Header Swap
- 19Tailwind Credit Card Flip with Magnetic Strip & CVV
- 20Tailwind RGB Channel-Split Glitch Card
- 21Tailwind Rotating Conic Aura Card with Blurred Gradient Bloom
- 22Tailwind Blob-to-Rectangle Border Morph Card
- 23Tailwind Magnetic Float Orb Card with Pointer Attraction
- 24Tailwind Typewriter Reveal Card with Steps Animation & Caret
- 25Tailwind Magazine Overlay Slide Card (Full-Face Panel Takeover)
- 26Tailwind Breathing Film Grain Card with SVG Turbulence Noise
- 27Tailwind Frosted Glass Intensify Card with Deepening Backdrop Blur
- 28Tailwind Blueprint Reveal Card with Circular clip-path Wipe
- 29Tailwind Cursor-Anchored Shockwave Ripple Card
- 30Tailwind Color-Burn Ignition Card with Grayscale-to-Fire Hover
- 31Tailwind Prismatic Light Sweep Card with Screen Blend Bar
- 32Tailwind Book Cover Open Card with Hinged 3D Rotation
- 33Tailwind Drifting Aurora Ribbons Card with Blurred Gradient Bands
Tailwind Frosted Glass Intensify Card with Deepening Backdrop Blur
A weather widget over a vivid colour field whose frost deepens on hover — backdrop-blur-[4px] to [22px], with saturation rising alongside. Two utilities and a transition; the port's only subtlety is naming backdrop-filter in the transition property list.
Untitled UI Pro: 5,000+ React + Tailwind CSS v4 components · from $349 one-time
Untitled UI React · Affiliate link
The code
<section class="tch-27 w-full min-h-svh grid place-items-center bg-tch27-bg bg-[radial-gradient(circle_at_20%_30%,#ff5ea0_0_22%,transparent_23%),radial-gradient(circle_at_75%_25%,#ffd23f_0_18%,transparent_19%),radial-gradient(circle_at_60%_80%,#2bd9c4_0_26%,transparent_27%),radial-gradient(circle_at_30%_75%,#6a5cff_0_20%,transparent_21%)] font-tch27-sans p-8">
<article class="group relative w-[340px] h-[440px] rounded-[26px] overflow-hidden cursor-pointer bg-white/8 border border-white/22 backdrop-blur-[4px] backdrop-saturate-[1.1] shadow-[0_18px_50px_rgb(0_0_0/0.3)] transition-[backdrop-filter,background-color,border-color,translate] duration-500 hover:bg-white/16 hover:border-white/40 hover:backdrop-blur-[22px] hover:backdrop-saturate-[1.6] hover:-translate-y-1.5 focus-within:bg-white/16 focus-within:backdrop-blur-[22px] focus-within:-translate-y-1.5 motion-reduce:transition-[backdrop-filter,background-color] motion-reduce:hover:translate-y-0 before:content-[''] before:absolute before:inset-x-0 before:top-0 before:h-[45%] before:opacity-50 before:bg-linear-to-b before:from-white/25 before:to-transparent">
<div class="relative z-2 h-full p-[2.4rem] flex flex-col justify-between text-white">
<span class="self-start text-[0.7rem] tracking-[0.16em] uppercase px-3.5 py-1.5 rounded-full bg-white/20 border border-white/30">Weather · Now</span>
<h2 class="font-extrabold text-[2.5rem] leading-none [text-shadow:0_2px_20px_rgb(0_0_0/0.35)]">Coastal<br>Forecast</h2>
<p class="text-[0.88rem] leading-[1.6] text-white/92">A glass widget over a living wallpaper. Hover and the frost thickens, melting the color behind it.</p>
<div class="flex justify-between items-center text-[0.8rem]"><span>Light fog · breezy</span><b class="text-2xl font-extrabold">18°</b></div>
</div>
</article>
</section><section class="tch-27 w-full min-h-svh grid place-items-center bg-tch27-bg bg-[radial-gradient(circle_at_20%_30%,#ff5ea0_0_22%,transparent_23%),radial-gradient(circle_at_75%_25%,#ffd23f_0_18%,transparent_19%),radial-gradient(circle_at_60%_80%,#2bd9c4_0_26%,transparent_27%),radial-gradient(circle_at_30%_75%,#6a5cff_0_20%,transparent_21%)] font-tch27-sans p-8">
<article class="group relative w-[340px] h-[440px] rounded-[26px] overflow-hidden cursor-pointer bg-white/8 border border-white/22 backdrop-blur-[4px] backdrop-saturate-[1.1] shadow-[0_18px_50px_rgb(0_0_0/0.3)] transition-[backdrop-filter,background-color,border-color,translate] duration-500 hover:bg-white/16 hover:border-white/40 hover:backdrop-blur-[22px] hover:backdrop-saturate-[1.6] hover:-translate-y-1.5 focus-within:bg-white/16 focus-within:backdrop-blur-[22px] focus-within:-translate-y-1.5 motion-reduce:transition-[backdrop-filter,background-color] motion-reduce:hover:translate-y-0 before:content-[''] before:absolute before:inset-x-0 before:top-0 before:h-[45%] before:opacity-50 before:bg-linear-to-b before:from-white/25 before:to-transparent">
<div class="relative z-2 h-full p-[2.4rem] flex flex-col justify-between text-white">
<span class="self-start text-[0.7rem] tracking-[0.16em] uppercase px-3.5 py-1.5 rounded-full bg-white/20 border border-white/30">Weather · Now</span>
<h2 class="font-extrabold text-[2.5rem] leading-none [text-shadow:0_2px_20px_rgb(0_0_0/0.35)]">Coastal<br>Forecast</h2>
<p class="text-[0.88rem] leading-[1.6] text-white/92">A glass widget over a living wallpaper. Hover and the frost thickens, melting the color behind it.</p>
<div class="flex justify-between items-center text-[0.8rem]"><span>Light fog · breezy</span><b class="text-2xl font-extrabold">18°</b></div>
</div>
</article>
</section>@import "tailwindcss";
@theme {
--color-tch27-bg: #1a0f2e;
--color-tch27-bg: oklch(0.2 0.06 295);
--font-tch27-sans: 'Hanken Grotesk', system-ui, sans-serif;
}
.tch-27 {
width: 100%;
min-height: 100svh;
}@import "tailwindcss";
@theme {
--color-tch27-bg: #1a0f2e;
--color-tch27-bg: oklch(0.2 0.06 295);
--font-tch27-sans: 'Hanken Grotesk', system-ui, sans-serif;
}
.tch-27 {
width: 100%;
min-height: 100svh;
}Setup — do this once per project
Skip this if your project already runs Tailwind v4.
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>Compiles in the browser — perfect for a CodePen or a quick test, not for production.
npm install tailwindcss @tailwindcss/vite
npm install tailwindcss @tailwindcss/vite// vite.config.js ("type": "module" in package.json)
import { defineConfig } from 'vite'
import tailwindcss from '@tailwindcss/vite'
export default defineConfig({
plugins: [tailwindcss()],
})// vite.config.js ("type": "module" in package.json)
import { defineConfig } from 'vite'
import tailwindcss from '@tailwindcss/vite'
export default defineConfig({
plugins: [tailwindcss()],
})Any v4 setup works — Vite, PostCSS or the CLI. Nothing in this demo is bundler-specific.
@import "tailwindcss";
@theme {
--color-tch27-bg: #1a0f2e;
--color-tch27-bg: oklch(0.2 0.06 295);
--font-tch27-sans: 'Hanken Grotesk', system-ui, sans-serif;
}
.tch-27 {
width: 100%;
min-height: 100svh;
}@import "tailwindcss";
@theme {
--color-tch27-bg: #1a0f2e;
--color-tch27-bg: oklch(0.2 0.06 295);
--font-tch27-sans: 'Hanken Grotesk', system-ui, sans-serif;
}
.tch-27 {
width: 100%;
min-height: 100svh;
}<link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;800&display=swap">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;800&display=swap">What changed in the port
Which parts became utilities, which stayed CSS, and why.
- Tailwind's
backdrop-blur-*emits the-webkit-prefix for free, so the port is genuinely shorter and more correct than the hand-written original. - The theme block is two entries — the smallest in the collection. When a design is made of white alphas over a gradient, there is very little to tokenise.
- UI change from the CSS original:
focus-within:twins on the frost states, and the title's text shadow was strengthened from 0.2 to 0.35 alpha so it holds contrast over the yellow region of the backdrop.
Here's a working CSS demo from CodeFronts. Use it as-is or adapt to your framework. All classes are scoped under a unique prefix so the code won't collide with your existing styles. MIT licensed.
Demo: Tailwind Frosted Glass Intensify Card with Deepening Backdrop Blur
Source: https://codefronts.com/motion/tailwind-css-card-hover-effects/tailwind-frosted-glass-intensify-card/
A weather widget over a vivid colour field whose frost deepens on hover — backdrop-blur-[4px] to [22px], with saturation rising alongside. Two utilities and a transition; the port's only subtlety is naming backdrop-filter in the transition property list.
## HTML
```html
<section class="tch-27 w-full min-h-svh grid place-items-center bg-tch27-bg bg-[radial-gradient(circle_at_20%_30%,#ff5ea0_0_22%,transparent_23%),radial-gradient(circle_at_75%_25%,#ffd23f_0_18%,transparent_19%),radial-gradient(circle_at_60%_80%,#2bd9c4_0_26%,transparent_27%),radial-gradient(circle_at_30%_75%,#6a5cff_0_20%,transparent_21%)] font-tch27-sans p-8">
<article class="group relative w-[340px] h-[440px] rounded-[26px] overflow-hidden cursor-pointer bg-white/8 border border-white/22 backdrop-blur-[4px] backdrop-saturate-[1.1] shadow-[0_18px_50px_rgb(0_0_0/0.3)] transition-[backdrop-filter,background-color,border-color,translate] duration-500 hover:bg-white/16 hover:border-white/40 hover:backdrop-blur-[22px] hover:backdrop-saturate-[1.6] hover:-translate-y-1.5 focus-within:bg-white/16 focus-within:backdrop-blur-[22px] focus-within:-translate-y-1.5 motion-reduce:transition-[backdrop-filter,background-color] motion-reduce:hover:translate-y-0 before:content-[''] before:absolute before:inset-x-0 before:top-0 before:h-[45%] before:opacity-50 before:bg-linear-to-b before:from-white/25 before:to-transparent">
<div class="relative z-2 h-full p-[2.4rem] flex flex-col justify-between text-white">
<span class="self-start text-[0.7rem] tracking-[0.16em] uppercase px-3.5 py-1.5 rounded-full bg-white/20 border border-white/30">Weather · Now</span>
<h2 class="font-extrabold text-[2.5rem] leading-none [text-shadow:0_2px_20px_rgb(0_0_0/0.35)]">Coastal<br>Forecast</h2>
<p class="text-[0.88rem] leading-[1.6] text-white/92">A glass widget over a living wallpaper. Hover and the frost thickens, melting the color behind it.</p>
<div class="flex justify-between items-center text-[0.8rem]"><span>Light fog · breezy</span><b class="text-2xl font-extrabold">18°</b></div>
</div>
</article>
</section>
```
## CSS
```css
@import "tailwindcss";
@theme {
--color-tch27-bg: #1a0f2e;
--color-tch27-bg: oklch(0.2 0.06 295);
--font-tch27-sans: 'Hanken Grotesk', system-ui, sans-serif;
}
.tch-27 {
width: 100%;
min-height: 100svh;
}
```Here's a working CSS demo from CodeFronts. Use it as-is or adapt to your framework. All classes are scoped under a unique prefix so the code won't collide with your existing styles. MIT licensed.
Demo: Tailwind Frosted Glass Intensify Card with Deepening Backdrop Blur
Source: https://codefronts.com/motion/tailwind-css-card-hover-effects/tailwind-frosted-glass-intensify-card/
A weather widget over a vivid colour field whose frost deepens on hover — backdrop-blur-[4px] to [22px], with saturation rising alongside. Two utilities and a transition; the port's only subtlety is naming backdrop-filter in the transition property list.
## HTML
```html
<section class="tch-27 w-full min-h-svh grid place-items-center bg-tch27-bg bg-[radial-gradient(circle_at_20%_30%,#ff5ea0_0_22%,transparent_23%),radial-gradient(circle_at_75%_25%,#ffd23f_0_18%,transparent_19%),radial-gradient(circle_at_60%_80%,#2bd9c4_0_26%,transparent_27%),radial-gradient(circle_at_30%_75%,#6a5cff_0_20%,transparent_21%)] font-tch27-sans p-8">
<article class="group relative w-[340px] h-[440px] rounded-[26px] overflow-hidden cursor-pointer bg-white/8 border border-white/22 backdrop-blur-[4px] backdrop-saturate-[1.1] shadow-[0_18px_50px_rgb(0_0_0/0.3)] transition-[backdrop-filter,background-color,border-color,translate] duration-500 hover:bg-white/16 hover:border-white/40 hover:backdrop-blur-[22px] hover:backdrop-saturate-[1.6] hover:-translate-y-1.5 focus-within:bg-white/16 focus-within:backdrop-blur-[22px] focus-within:-translate-y-1.5 motion-reduce:transition-[backdrop-filter,background-color] motion-reduce:hover:translate-y-0 before:content-[''] before:absolute before:inset-x-0 before:top-0 before:h-[45%] before:opacity-50 before:bg-linear-to-b before:from-white/25 before:to-transparent">
<div class="relative z-2 h-full p-[2.4rem] flex flex-col justify-between text-white">
<span class="self-start text-[0.7rem] tracking-[0.16em] uppercase px-3.5 py-1.5 rounded-full bg-white/20 border border-white/30">Weather · Now</span>
<h2 class="font-extrabold text-[2.5rem] leading-none [text-shadow:0_2px_20px_rgb(0_0_0/0.35)]">Coastal<br>Forecast</h2>
<p class="text-[0.88rem] leading-[1.6] text-white/92">A glass widget over a living wallpaper. Hover and the frost thickens, melting the color behind it.</p>
<div class="flex justify-between items-center text-[0.8rem]"><span>Light fog · breezy</span><b class="text-2xl font-extrabold">18°</b></div>
</div>
</article>
</section>
```
## CSS
```css
@import "tailwindcss";
@theme {
--color-tch27-bg: #1a0f2e;
--color-tch27-bg: oklch(0.2 0.06 295);
--font-tch27-sans: 'Hanken Grotesk', system-ui, sans-serif;
}
.tch-27 {
width: 100%;
min-height: 100svh;
}
```How this works
Frost is two numbers. Blur radius and saturation. Raising both on hover melts the colour field behind the glass and enriches what remains — saturation matters as much as blur, because a pure blur reads as grey.
The backdrop needs something to blur. The stage is four overlapping radial gradients in hot pink, yellow, teal and violet. That is not decoration; a glass card on a flat background shows no effect at all.
The top highlight is the tell. A 45%-tall white gradient at half opacity along the upper edge is what suggests a curved pane catching light. Remove it and the same blur reads as a translucent rectangle.
Make it yours
- Frost delta: 4px→22px is dramatic; 12px→18px is a whisper.
- Tint:
bg-white/8→hover:bg-white/16controls how milky the glass gets. - Add a coloured bloom behind the glass on hover for a branded version — see demo 02 for the pattern.
Gotchas — read before shipping
backdrop-filteris the most expensive property in this collection. Six to eight glass cards per screen is the practical ceiling on mobile.- Text on glass frequently fails 4.5:1 over a busy backdrop — the white tint and the text shadow here exist to fix that, not to decorate.
- Name
backdrop-filterin the transition list; it is not covered bytransition-colorsortransition-opacity. - Older Safari needs
-webkit-backdrop-filter; Tailwind'sbackdrop-blur-*emits both, which is one of the quieter wins of using the utility over hand-written CSS.
Browser support
| Chrome | Safari | Firefox | Edge |
|---|---|---|---|
| 111+ | 16.4+ | 128+ | 111+ |
backdrop-filter is Baseline (Chrome 76, Safari 9, Firefox 103); the quoted floor is Tailwind v4's generated sheet.