在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
position定位里的absolute,relative和fixed
由position引起的层级关系问题 首先我们要知道,css属性其实是一个立体空间有x,y,z轴,但是只有我们使用了position定位时,z轴上的层级关系才体现出来,即z-index这个属性仅定位元素才有。现在让我们来分析这些层级关系吧。 层级关系如下:
只有兄弟关系的定位元素才能比较层级 下面让我们来分析上面列出的几点: 分析一下第一点 <style> .c1{ width: 100px; height: 100px; background-color: rgb(255, 0, 0); } .c2{ width: 200px; height: 100px; background-color: rgb(0, 0, 255);; position: absolute; top: 50px; } </style> <body> <div class="c1">c1</div> <div class="c2">    c2</div> </body> 此时c2的层级更高,应该在叠在c1上方 分析一下第二点 <style type="text/css"> .c1{ width: 100px; height: 100px; background-color: rgb(255, 0, 0); position: relative; } .c2{ width: 200px; height: 100px; backgr 此时定位元素都有层级,后面的元素在上面 分析一下第三点 <style type="text/css"> .c1{ width: 100px; height: 100px; background-color: rgb(255, 0, 0); position: relative; 此时c3会直接覆盖c2,因为c2的定位是absolute,下面的元素会往c2处移动,由第二点可知,c3在c2的上面,故c3直接盖住了c2 分析一下第四点 <style type="text/css"> .c1{ width: 100px; height: 100px; background-color: rgb(255, 0, 0); position: relative; c1和c2都是定位元素,默认z-index:0,将c1的z-index设置为1,这样c1会在c2的上面 分析一下第五点 <style type="text/css"> .c1{ width: 100px; height: 100px; background-color: rgb(255, 0, 0); position: relative; } .c2{ width: 200px; height: 100px; background-color: rgb(0, 0, 255);; position: absolute; z-index: 1; } </style> <body> <div class="c2">     c2 <div class="c1">c1</div> </div> </body> 把c1放在c2里面,即使把c2的z-index设为1,c1依旧在c2上面,说明嵌套元素无层级关系,只有兄弟元素才有层级关系
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持极客世界。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论