CSS核心(四十六)调整定位元素的显示层级 z-index
我们知道,通过定位可以让元素形成层叠结构,那么如何调整哪个元素哪个元素在上呢?类似于PS中对图层的调整,谁压着谁。在CSS中是通过z-index属性来设置的,z-index属性的取值为数字,该数字没有取值范围,值大的在上,值小的在下。
请看下面的代码:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>调整定位元素的显示层级 z-index</title>
</head>
<style>
.box1{
width:400px;
height:400px;
background:#f00;
position:absolute;
left:0;
top:0;
}
.box2{
width:300px;
height:300px;
background:#ff0;
position:absolute;
left:0;
top:0;
/* 表示为默认层级 定位后下面的元素覆盖上面的元素 */
/* z-index:auto; */
}
.box3{
width:200px;
height:200px;
background:#00f;
position:absolute;
left:0;
top:0;
/* 设置层级关系 -1*/
/* z-index:-1; */
}
.box4{
width:100px;
height:100px;
background:#0f0;
position:absolute;
left:0;
top:0;
/* z-index:-2; */
}
.s1{
width:100px;
height:50px;
background:#F0F;
position:absolute;
left:0;
top:0;
/* z-index:9; */
}
</style>
<body>
<div class="box1"></div>
<div class="box2"></div>
<div class="box3"></div>
<div class="box4">
<div class="s1"></div>
</div>
</body>
</html>
以上代码的显示结果为:
当我们调整每个选择器中的z-index属性值时就会发现,图层的层级发生了改变。
例如:我们将黄色块放在最上面,只需要将.box中的z-index属性值设为任意大于0的数值即可。
结果如下:
大家可以把以上代码复制出去调整z-index的值试试看。
刚出校门能有如此深刻的感受真不错,一生受用。我虽出门6年却是刚入行程序员,对我的帮助更大,看来不管用什么语言,好的数据基础和算法思想一生受用。谢谢楼主,并希望在成长的路上多多沟通。 真的值得大家向你学习,不过学海无涯,还得加油学习! dddddddddddd 好意!肯请楼主带主角去测测智商,情商为0就不用了! 感触很深·!!!!!!!!!!!!!@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 第一天来报到就看到这么好的贴值了~~~~~~~~~~~~` 收益匪浅感触颇深十分感谢你发的文章~~ 应该好好学习的啊 啊....长舒一口气!