如何使用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%的浏览器支持这个样式。随着时间的推移,我相信毛玻璃效果将得到更广泛的应用。

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

相关推荐
autumnTop6 分钟前
为什么访问不了同事的服务器或者ping不通地址了?
前端·后端·程序员
weixin_4433533128 分钟前
小红书帖子评论的nodejs爬虫脚本
前端·爬虫
yzzzzzzzzzzzzzzzzz29 分钟前
HTML 常用标签介绍
前端·html
Wcy307651906632 分钟前
web前端第二次作业
前端·javascript·css
北京_宏哥32 分钟前
Python零基础从入门到精通详细教程11 - python数据类型之数字(Number)-浮点型(float)详解
前端·python·面试
waterHBO35 分钟前
css 模拟一个动画效果,消息堆叠。
前端·css
挽淚44 分钟前
面试题:CSS 居中方案全解
css
艾小码1 小时前
JavaScript 排序完全指南:从基础到高阶实战
前端·javascript·排序算法
前端加油站1 小时前
在 cursor 成为流行的开发方式后,作为普通开发我们能做什么
前端
Cache技术分享1 小时前
163. Java Lambda 表达式 - Function 的链式组合
前端·后端