绝对定位部分高度与最近的祖先元素高度一样?
没有偏移量、有祖先元素时,绝对定位部分不是应该脱离文档流吗?
我设置的绝对定位部分的高度大于它最近的外层div,但是如果最近的外层div设置为position:relative时,绝对定位部分的高度就跟它一样了;如果远一点的外层div设置为position:relative时,就还是原来的高度,代码1:
.wrap{
width:1200px;
margin:0 auto;
}
.top{
background-color:#0F0;
border:#000;
width:100%;
height:50px;
}
.button{
background-color:#FCC;
clear:both;
height:50px;
}
.mainbody{
background-color:#000;
width:100%;
height:100px;
overflow:hidden;
position:relative;
}
.box{
background-color:#C0F;
height:200px;
position:absolute;
}
</style>
</head>
<body>
<div class="wrap">
<div class="top">顶部
</div>
<div class="mainbody">
<div class="box">绝对定位
</div>
</div>
<div class="button">底部
</div>
</div>
</body>
显示效果1:
代码2:
.wrap{
width:1200px;
margin:0 auto;
position:relative;
}
.top{
background-color:#0F0;
border:#000;
width:100%;
height:50px;
}
.button{
background-color:#FCC;
clear:both;
height:50px;
}
.mainbody{
background-color:#000;
width:100%;
height:100px;
overflow:hidden;
}
.box{
background-color:#C0F;
height:200px;
position:absolute;
}
</style>
</head>
<body>
<div class="wrap">
<div class="top">顶部
</div>
<div class="mainbody">
<div class="box">绝对定位
</div>
</div>
<div class="button">底部
</div>
</div>
</body>
显示效果2:
设置了偏移量也是这样,当祖先元素是最近的div时,高度就会跟着变化