AI CSS Animations

CSS Glassmorphism & Liquid Glass Effects

30 glassmorphism and liquid glass effects in CSS: frosted cards, glass buttons, navbars, controls, login forms and refraction. Each one comes with a moving backdrop so the glass has something to blur.

How to use these glass effects

Open any effect and copy the HTML and CSS. Each snippet includes a small colorful backdrop, because glass over a flat color looks flat. In your app, delete the backdrop and put the glass element over your own photo, gradient or animated background.

The glass itself is a semi-transparent fill, backdrop-filter: blur() saturate(), a thin light border and a soft shadow. Set --gls-color to tint it and --gls-size to scale it. The liquid glass entries add an inline SVG displacement filter for refraction, which renders in Chromium; other browsers fall back to frosted glass.

Keep text on glass readable: check the contrast over the busiest part of your background. Every snippet ships with a prefers-reduced-motion rule that stops the backdrop and highlight motion.

Frequently asked questions

How do I make a glassmorphism effect in CSS?

Give an element a semi-transparent background, backdrop-filter: blur(), a thin light border and a soft shadow, and put something colorful behind it. Every entry above is that recipe tuned for a different component.

How do I make Apple's Liquid Glass effect with CSS?

Combine backdrop-filter blur and saturation with an inline SVG feDisplacementMap filter for the refraction, plus a bright edge highlight. The refraction renders in Chromium today; other browsers get frosted glass.

Why is backdrop-filter not working?

The element's own background must be transparent or semi-transparent, older Safari needs -webkit-backdrop-filter, and there has to be visible content behind the element to blur.

Does glassmorphism hurt performance?

backdrop-filter is GPU work on every frame behind it. Keep glass panels modest in size, avoid animating the blur radius, and test on low-end phones.

Is glassmorphism accessible?

Only with enough text contrast. Add a more opaque fallback, and consider @media (prefers-reduced-transparency: reduce) to swap the glass for a solid panel.