如何使用HTML和CSS实现一个毛玻璃效果

认识毛玻璃效果

毛玻璃效果(Glassmorphism)是一个非常流行的视觉设计,你应该在一些移动APP或PC网站上看到过毛玻璃效果。它的主要特征就是半透明的背景,以及阴影和边框,同时还要为背景加上模糊效果,使得背景之后的元素根据自身内容产生漂亮的"变形"效果。

毛玻璃效果如下所示:

这是一个应用毛玻璃效果的真实示例,可以在 ui.glass 网站上查看。ui.glass 是一个基于"毛玻璃"设计原则的现代 CSS UI 库,可以帮助你快速设计和构建漂亮的网站和应用程序。

你可以在上图中右侧代码后面看到我所说的模糊效果,后方的内容产生了漂亮的变形效果,同时还保持了可读性,赏心悦目。

本文将展示如何仅用 HTML 和 CSS 来实现一个类似的毛玻璃效果。

基本代码结构

首先,创建一个 HTML 文件,写入如下内容:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Glassmorphism effect</title>
</head>
<body>
    <div class="card">
    <h3 class="card-title">Glassmorphism is awesome</h3>
    <p>A modern CSS UI library based on the glassmorphism design principles that will help you quickly design and build beautiful websites and applications.</p>
    <a href="https://ui.glass">Read more</a>
</div>
</body>
</html>

在卡片上应用毛玻璃效果之前,先添加一些排版样式,加入以下 CSS:

css 复制代码
.card {
  width: 400px;
  height: auto;
  padding: 2rem;
  border-radius: 1rem;
}

.card-title {
  margin-top: 0;
  margin-bottom: .5rem;
  font-size: 1.2rem;
}

p, a {
  font-size: 1rem;
}

a {
  color: #4d4ae8;
  text-decoration: none;
}

使用 CSS 制作毛玻璃效果

我们在这里要做的只是设置一个半透明背景颜色,并使用 backdrop-filter 属性设置模糊效果。在 .card 元素的样式中加入以下 CSS:

css 复制代码
.card {
	/* other styles */
	background: rgba(255, 255, 255, .7);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

现在我们已经为卡片加上了毛玻璃效果的样式,效果如下。

浏览器支持

毛玻璃效果的主要缺点之一就是 backdrop-filter 属性在 Internet Explorer 11 上不被支持,而且 Firefox 默认禁用了这个属性。

然而,根据 caniuse.com 网站的数据,全世界超过 88.2% 的浏览器支持这个样式。如果 Firefox 决定默认启用这个属性,并且随着过时浏览器(如 IE 11)的使用率下降,我相信未来几年毛玻璃效果会得到更广泛的应用。

总结

在本文中,我们介绍了毛玻璃效果(Glassmorphism),这是一种流行的视觉设计,常见于移动应用和网站中。毛玻璃效果的主要特点是半透明的背景、阴影和边框,以及背景元素的模糊效果,从而产生漂亮的变形效果。

我们还提到了一个名为ui.glass的现代CSS UI库,它基于毛玻璃设计原则,可以帮助你快速设计和构建漂亮的网站和应用程序。

同时我们展示了如何使用HTML和CSS实现类似的毛玻璃效果。通过设置半透明背景颜色并使用backdrop-filter属性来实现模糊效果,我们成功地给卡片添加了毛玻璃效果。

最后,展示了浏览器对毛玻璃效果的支持情况。尽管在某些过时的浏览器上不支持该属性,但根据caniuse.com网站的数据,全球超过88.2%的浏览器支持这个样式。随着时间的推移,我相信毛玻璃效果将得到更广泛的应用。

通过本教程,希望你对毛玻璃效果有了更深入的了解,并能够运用到自己的设计和开发项目中。

相关推荐
kyriewen118 分钟前
Sass:让 CSS 从手工作坊迈入工业时代
前端·javascript·css·html·css3·sass·html5
冰暮流星9 分钟前
javascript之变量作用域
开发语言·前端·javascript
远方的小草17 分钟前
检索增强生成技术RAG
前端
haorooms21 分钟前
WebTransport 核心用法及身份验证和应用
前端
用户982361079027721 分钟前
Node.js 使用 adm-zip 操作 ZIP 文件指南
前端
yannick_liu23 分钟前
VUE2 + ElementUI 将Table数据导出为Excel文件——vue-json-excel
前端
哇哇哇哇23 分钟前
Vue3项目性能优化
前端
big tail32 分钟前
Windows本地Docker模拟前端项目发版
前端·windows·docker
学以智用37 分钟前
Vue3 状态管理库 Pinia 完整教程
前端·vue.js
北寻北爱38 分钟前
面试题-js篇
前端·javascript