How to create a glassmorphism effect with CSS
To create a glass mimicry effect of CSS, you need to use backdrop-filter to achieve background blur, set a translucent background such as rgba(255,255,255,0.1), add subtle borders and shadows to enhance the sense of hierarchy, and ensure that there is enough visual content behind the elements; 1. Use backdrop-filter: blur(10px) to blur the background content; 2. Use rgba or hsla to define the transparent background to control the degree of transparency; 3. Add 1px solid rgba(255,255,255,0.3) borders and box-shadow to enhance the three-dimensional sense; 4. Ensure that the container has rich backgrounds such as pictures or textures to present a blur penetration effect; 5. Provide -webkit-backdrop-filter and alternate background colors when not supported, and ultimately achieve a glass effect that is both modern and readable, complete sentences.
Creating a glassmorphism effect with CSS involves combining transparency, blur, and subtle borders to mimic a frosted glass appearance. It's widely used in modern UI design for overlays, cards, and navigation bars. Here's how to achieve it effectively.
1. Use backdrop-filter
for Background Blur
The key to glassmorphism is blurring the area behind the element, not the element itself. This is where backdrop-filter
comes in.
.glass { backdrop-filter: blur(10px); }
This applies a blur to whatever is behind the element — like content showing through a translucent surface. Note: backdrop-filter
doesn't work on all older browsers (especially older versions of Firefox and some mobile browsers), so consider fallbacks.
2. Set a Semi-Transparent Background
Use rgba()
or hsla()
colors to make the background slightly transparent so the blur effect is visible.
.glass { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); }
You can adjust the alpha value (last number in rgba
) to control transparency:
-
0.1
→ very transparent (light frosted look) -
0.3
→ more solid but still glassy
Using white with low opacity gives a clean, modern look. For dark themes, try:
background: rgba(255, 255, 255, 0.05);
Or a dark tint:
background: rgba(0, 0, 0, 0.2);
3. Add Subtle Border and Shadow for Depth
A thin, light border enhances the glass-like edge. Combine it with a soft box-shadow to lift the element from the background.
.glass { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); /* For Safari */ border: 1px solid rgba(255, 255, 255, 0.3); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); border-radius: 12px; }
-
border
: Adds a faith edge that reflects light -
box-shadow
: Gives depth and separation -
border-radius
: Softens corners, typical in glassmorphic design
4. Ensure Proper Context
Glassmorphism only works when there's something behind the element to blur. Make sure:
- The container has enough visual content (images, patterns, or layered elements)
- The glass element isn't on a flat solid background
Example structure:
<div class="container"> <div class="glass">Content</div> </div>
.container { background: url('background-image.jpg') no-repeat center center; padding: 40px; } .glass { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.3); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); border-radius: 12px; padding: 20px; color: white; }
Browser Support and Fallbacks
Since backdrop-filter
isn't supported everywhere:
- Use
-webkit-backdrop-filter
for Safari - Provide a fallback background color for unsupported browsers
.glass { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } @supports not (backdrop-filter: blur(10px)) { .glass { background: rgba(255, 255, 255, 0.5); /* More opaque fallback */ } }
This ensures readability even when blur isn't available.
That's it — a clean, modern glassmorphism effect using just CSS. The trick is balancing transparency, blur, and lighting to create a sense of depth without sacrificing readingability.
The above is the detailed content of How to create a glassmorphism effect with CSS. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

To change the CSS list style, first use list-style-type to change the bullet or numbering style. 1. Use list-style-type to set the bullet of ul to disc, circle or square, and the number of ol is decimal, lower-alpha, upper-alpha, lower-roman or upper-roman. 2. Remove the tag completely with list-style:none. 3. Use list-style-image:url('bullet.png') to replace it with a custom image. 4. Use list-style-position:in

Use CSS to create dotted borders, just set the border attribute to dotted. For example, "border:3pxdotted#000" can add a 3-pixel-wide black dot border to the element. By adjusting the border-width, the size of the point can be changed. The wider borders produce larger points. You can set dotted borders for a certain side, such as "border-top:2pxdottedred". Dotted borders are suitable for block-level elements such as div and input. They are often used in focus states or editable areas to improve accessibility. Pay attention to color contrast. At the same time, different from dashed's short-line style, dotted presents a circular dot shape. This feature is widely used in all mainstream browsers.

CSSgradientsprovidesmoothcolortransitionswithoutimages.1.Lineargradientstransitioncolorsalongastraightlineusingdirectionsliketobottomorangleslike45deg,andsupportmultiplecolorstopsforcomplexeffects.2.Radialgradientsradiatefromacentralpointusingcircleo

To create a glass mimicry effect of CSS, you need to use backdrop-filter to achieve background blur, set a translucent background such as rgba(255,255,255,0.1), add subtle borders and shadows to enhance the sense of hierarchy, and ensure that there is enough visual content behind the elements; 1. Use backdrop-filter:blur(10px) to blur the background content; 2. Use rgba or hsla to define the transparent background to control the degree of transparency; 3. Add 1pxsolidrgba(255,255,255,0.3) borders and box-shadow to enhance the three-dimensionality; 4. Ensure that the container has rich backgrounds such as pictures or textures to present a blurred penetration effect; 5. It is compatible with old browsers

It is feasible to create a responsive automatic carousel slider with pure CSS, just combine HTML structure, Flexbox layout, and CSS animation. 2. First build a semantic HTML container containing multiple recommendation terms, each .item contains reference content and author information. 3. Use the parent container to set display:flex, width:300% (three slides) and apply overflow:hidden to achieve horizontal arrangement. 4. Use @keyframes to define a translateX transformation from 0% to -100%, and combine animation: scroll15slinearinfinite to achieve seamless automatic scrolling. 5. Add media

Usebuilt-incursortypeslikepointer,help,ornot-allowedtoprovideimmediatevisualfeedbackfordifferentinteractiveelements.2.ApplycustomcursorimageswiththecursorpropertyusingaURL,optionallyspecifyingahotspotandalwaysincludingafallbacklikeautoorpointer.3.Fol

Thegrid-template-areaspropertyallowsdeveloperstocreateintuitive,readablelayoutsbydefiningnamedgridareas;eachstringrepresentsarowandeachwordacolumncell,withgrid-areanamesonchildelementsmatchingthoseinthetemplate,suchas"headerheaderheader"for

There are two main ways to implement dark mode: one is to use prefers-color-scheme media to query automatically to adapt system preferences, and the other is to add manual switching function through JavaScript. 1. Use prefers-color-scheme to automatically apply dark themes according to the user system. There is no need for JavaScript, just define the styles in the media query; 2. To achieve manual switching, you need to define light-theme and dark-themeCSS classes, add toggle buttons, and use JavaScript to manage the theme status and localStorage to save user preferences; 3. You can combine both to read localSt first when the page is loaded.
