今天我给大家分享一个前端视觉差案例,用到了background-attachment属性,带着大家更好地理解fixed的含义。
首先我们在vscode中输入以下代码,和在img文件夹下存入三张照片。
运行代码后,效果如下方图片中展示:
通过视频发现,逐渐下拉滚动条,会发现第二张照片的底部慢慢出现,第一张照片慢慢消失,直到页面只显示第二张照片,然后是第三张。看到这里,大家可能会疑惑,这究竟是怎么回事,那么让我先带着大家重新回顾一遍
background-attachment:scroll/fixed的定义。
background-attachment:scroll(滚动)/fixed(固定,固定在浏览器窗口里面,
固定之后找到相对于浏览器窗口了)
那么接下来就让我参考着定义为大家解释其中的原理。
首先,background-attachment:fixed表示三张图一直都是固定在窗口显示的,开始是div h1的区域所以就显示div h1中的照片,而随着滚动条的滑动就到达了div h2的区域,最后到了div h3的区域,就显示第三张照片。
代码如下:
<!DOCTYPE html>
<html>
<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>文本</title>
<style>
*{
margin:0;
padding:0;
}
div{
height:800px;
background-position:center;
background-repeat:no-repeat;
background-size: cover;
background-attachment: fixed;
}
.h1{
background-image:url(img/1.jpg);
}
.h2{
background-image:url(img/2.jpg);
}
.h3{
background-image:url(img/3.jpg);
}
</style>
</head>
<body>
<div class="h1"></div>
<div class="h2"></div>
<div class="h3"></div>
</body>
</html>