CSS中的z-index属性有什么用??简单说明

html-css022

CSS中的z-index属性有什么用??简单说明,第1张

当网页上出现多个由绝对定位(POSITION:absolute)或固定定位(POSITION:fixed)所产生的浮动层时,必然就会产生一个问题,就是当这些层的位置产生重合时,谁在谁的上面呢?或者说谁看得见、谁看不见呢?这时候就可以通过设置z-index的值来解决,这个值较大的就在上面,较小的在下面。

z-index的意思就是在z轴的顺序,如果说网页是由x轴和y轴所决定的一个平面,那么z轴就是垂直于屏幕的一条虚拟坐标轴,浮动层就在这个坐标轴上,那么它们的顺序号就决定了谁上谁下了。

当你定义的CSS中有position属性值为absolute、relative或fixed,

用z-index此取值方可生效。

此属性参数值越大,则被层叠在最上面。

例子:

<html>

<head>

<style>

.z1,.z2,.z3{position:absolutewidth:200pxheight:100pxpadding:5px 10pxcolor:#ffftext-align:right}

.z1{z-index:1background:#000}

.z2{z-index:2top:30pxleft:30pxbackground:#C00}

.z3{z-index:3top:60pxleft:60pxbackground:#999}

</style>

</head>

<body>

<div class="z1">z-index:1</div>

<div class="z2">z-index:2</div>

<div class="z3">z-index:3</div>

</body>

</html>

上面三个CSS,将根据z-index的值决定谁在最上层!

这个其实很容易理解,比如说两个定位元素,都设置了position: absolutetop: 0left: 0然后他们俩重叠在一起了,那么谁显示在上面呢?实际上z-index就是用来解决这个问题,就像桌子上的纸张一样,位于上面的肯定会挡住下面的。

那么什么时候用呢?其实就是我刚刚说的那个场景,z-index发生重叠后,才会考虑使用这个,但是呢,他起作用也是有前提的,比如说,最常见的就是,你首先是定位元素,也就是position不为static的元素才有效,所以说,如果你使用float这些,实际上在使用z-index是没什么用的,除了这个呢?许多css3属性也会使其z-index变得有效,比如说transform.

至于其他属性和这个属性冲突,这个我不是很理解你说的冲突指的是什么,所以就暂时不能给你一个明确的答案了。不过呢,我建议你看一篇文章,你看过以后,我相信你应该就不会再问类似的问题了

层叠上下文和z-index