div+css中怎样在父盒里加背景图片并且都显示出来不被子盒子中的背景图片所覆盖

html-css07

div+css中怎样在父盒里加背景图片并且都显示出来不被子盒子中的背景图片所覆盖,第1张

那是不可能的吧……除非你让内层DIV不显示。或者让内层的坐标处于外层尺寸范围之外。如果有重复的话,内层肯定会挡住外层的啊。不过如果你设置FILTER的话,或许会达到背景朦胧重叠的效果。

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>test</title>

<style type="text/css">

#father{

position:relative/*父盒子位置要用relative*/

margin:20px auto

width:400px

height:100px

border:1px solid red

}

#father #a{

position:absolute/*子盒子位置要用absolute*/

width:100%

height:50px

background:blue

opacity:0.6

z-index:2

}

#father #b{

position:absolute/*子盒子位置要用absolute*/

width:100%

height:80px

background:#F4AF19

text-align:right

z-index:1

}

</style>

</head>

<body>

<!--按上面的CSS定位方法布局就会重叠,那个子盒子在前面用Z-INDEX 决定-->

<div id="father">

<div id="a">我是A盒子</div>

    <div id="b">我是B盒子</div>

</div>

</body>

</html>

楼主,你第一个问题是因为你所定义的.div1只让包住aaaaa的盒子漂浮了起来,但是aaaaa与bbbbb的内容还属于文本状态,文本状态会使不同标签中的内容,分行显示,也就是aaaaa在第一行,bbbbb在第二行的原因。而由于.div2没有漂浮,所以两者的盒子模型会叠加显示,造成了图一中蓝色只显示了20像素。

楼主对两者增加:display:inline就可解决问题

第二个问题:

overflow:hidden这个属性,当盒子没有float状态、并且定义了width、height时,默认会使盒子处于漂浮状态。