一种方法是使用标签的自然顺序和嵌套顺序来形成合理的布局。
而第一种方法却不是万能的,有时候我们需要将原本位于下层的元素移到另一个元素上方,那可以使用z-index;
当你定义的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的值决定谁在最上层!
首先,在HTML中给每个元素设置一个唯一的ID属性。然后,使用CSS来定义每个元素的层级,通过z-index属性来设置元素的层级。
同时,可以通过position属性来设置元素的定位,将元素定位到更高的层级上。
最后,可以使用float属性来设置元素的浮动,将元素定位到更高的层级上。
层级 Z-index
特点:
1、有定位属性的元素谁在上面,比的是Z-index值,谁的值大,谁就在上面
2、有定位属性的元素默认层级是0,如果层级一样,则后来者居上。
3、只有 有定位属性的元素才有层级的概念
4、只有亲兄弟元素才能比较层级
例子:
比较前
比较后
比较后为什么还是y在上面吗?不是y先进行定位的吗?
其实这个跟那个元素先定位没有关系,只跟你定义元素的先后有关系,
虽然你CSS没有写定位,可是层级是默认的
把x的层级定为2之后 请看效果