如何实现示例中的CSS玻璃效果及色彩溢出模糊效果?
复刻带色彩溢出模糊效果的玻璃质感卡片

你已经实现基础玻璃效果,但没法达成图中的色彩模糊溢出效果,用backdrop-filter也没解决问题。下面是具体的实现方案:
核心逻辑:色彩溢出效果不是
backdrop-filter能直接实现的,得给卡片额外加一层带模糊的色彩层,让它超出卡片边界,模拟色彩扩散的视觉效果,再和基础玻璃效果叠加。具体代码实现:
- 给卡片容器设置相对定位,作为色彩溢出层的定位基准:
.glass-card { position: relative; /* 基础玻璃效果样式 */ backdrop-filter: blur(10px); background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 16px; padding: 24px; /* 按需添加宽高、阴影等布局样式 */ } - 用伪元素创建色彩溢出层,让它超出卡片边界并添加模糊:
.glass-card::before { content: ''; position: absolute; inset: -20px; /* 超出卡片20px,数值可根据视觉效果调整 */ background: linear-gradient(135deg, #ff7a7a, #4dd0e1); /* 替换成你需要的主题色彩 */ filter: blur(30px); opacity: 0.6; z-index: -1; /* 放在卡片内容下方,不遮挡内容 */ } - 进阶优化:如果想让溢出色彩和背景融合更自然,可以给伪元素加上混合模式,比如
mix-blend-mode: soft-light;,根据实际背景调整即可。
- 给卡片容器设置相对定位,作为色彩溢出层的定位基准:
内容的提问来源于stack exchange,提问作者Mohit Rakh
相关产品推荐
相关产品推荐

