这里写自定义目录标题
CSS实现毛玻璃效果
我们经常会在页面中看到使用毛玻璃效果来美化页面的实例。整个实现过程比较简单,需要用到css中filter属性中的blur函数以及伪元素。
效果图
整个效果如下:
整体实现思路
-
对元素直接使用模糊会将其内容全部模糊掉,为了保证文字不会模糊掉所以我们通过伪元素来解决这个问题。
-
模糊效果并不会应用到其背后的元素上,所以需要使用 content 区域有和背景相同的背景图并进行模糊。
源代码
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
<style type="text/css">
* {
margin: 0px;
padding: 0px;
}
html,
body {
color: rgba(0, 0, 0, 0.8);
width: 100%;
height: 100%;
}
.main {
width: 100%;
height: 100%;
position: relative;
background: url(timg.jpg) center top;
background-size: cover;
}
.content {
width: 400px;
height: 400px;
position: absolute;
top: 50%;
left: 50%;
overflow: hidden;
margin-top: -200px;
border-radius: 10px;
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
z-index: 1;
padding: 50px;
box-sizing: border-box;
/*不会把盒子撑开*/
}
.content::before {
content: "";
position: absolute;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
z-index: -1; /*-1 可以当背景*/
filter: blur(6px);
margin: -30px;
/*消除边缘透明*/
background: url(timg.jpg) center top;
background-size: cover;
background-attachment: fixed; /*位置固定*/
}
.content form {
text-align: center;
margin-bottom: 20px;
font-size: 23px;
}
.content form input {
width:300px;
height: 40px;
color:#ddd;
font-size: 20px;
}
.content .demo{
color:blue;
}
</style>
</head>
<body>
<div class="main">
<div class="content">
<form action="">
用户名:<br>
<input type="text" name="firstname" value="请输入用户名">
<br>
密码:<br>
<input type="text" name="lastname" value="请输入密码">
<br><br>
<input type="submit" class="demo" value="登录">
</form>
</div>
</div>
</body>
</html>