HTML5开发-如何实现两个div的重叠

html-css015

HTML5开发-如何实现两个div的重叠,第1张

在很多情况下都需要实现两个div的重叠(包含层级关系),实现的方法也和div中属性设置的不同也是不一样的,尤其是 position 和 display 的变化. 但是总体上就是对margin( 盒模型 )和top( 定位 )等的运用。margin是属于盒模型中的一部分,修改了margin,就是修改了div元素的大小,但是修改了定位,只是修改了 自己本身的位置 ,不修改元素占用的大小,也不会干扰其他元素的位置。 1. 但是依靠margin来重叠有很大的 局限性 ,图片如下: 这是设置了 黄色div块的margin-top 才实现的,你也可以设置 蓝色div的margin-bottom。 如果你设置黄色div的margin-bottom就不能实现重叠的效果。 2. 当两个div的position为 relative 时,可以同时使用盒模型和定位来实现重叠。使用定位来选择位置时,优先级为top>bottom,left>right,优先级高的会屏蔽低的。 3. 当两个div的position为 absolute 时,那么父元素必须设置一个 定位 属性(不能为默认的static),这样子div才能相对于父div布局。

使用伪类样式,设置div的属性position为absolute,

还有属性 z-index:1这个属性设置在层叠里的第几个层

代码如下:

<style type="text/css">

<!--

#Layer1 {

position:absolute

background-color:#0066FF

left:55px

top:26px

width:383px

height:291px

z-index:1

}

#Layer2 {

position:absolute

background-color:#FF0000

left:104px

top:57px

width:250px

height:218px

z-index:2

left: 58px

}

-->

</style>

<body>

<div id="Layer1">sss</div>

<div id="Layer2">aaa</div>

</body>