任何元素从普通流脱离里,盒子都会产生重叠。z-index属性可以控制哪个盒子显示在上层。当使用相对定位、固定定位、绝对定位时,盒子都可能发生重叠现象。下面我们来看一下css让元素重叠的方法。
CSS元素的重叠方式
1、负margin:
给元素设置负margin使其移动后 原来的位置是不会保留的
负margin可以让元素的占用空间变小 后面的元素可以覆盖当前的元素
(这里有两个相同大小的div 宽高都是100px (如图一) 当我们给上面类名为div的div设置了-margin-bottom之后 (见图二) 我们发现下面的元素覆盖了-margin的位置)
2、浮动(float)
原来的位置不保留 并且可以遮盖住其他元素
float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。
如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄。
注释:假如在一行之上只有极少的空间可供浮动元素,那么这个元素会跳至下一行,这个过程会持续到某一行拥有足够的空间为止。
3、脱离页面流定位(position)
相对定位:原来位置保留 并且不会挤到其他元素,只会重叠
绝对定位:不保留原来位置 脱离页面流
position 属性规定元素的定位类型。
这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在正常流中的默认位置偏移。