鉴于这个网站:溢出:隐藏的股利和身体,不同的行为
<body>
<div id="a"></div>
<div id="b"></div>
</body>
我想#b
,以填补其容器块的所有剩余的垂直空间,我开始与此:
body {
height: 500px;
width: 500px;
overflow: hidden;
}
#a {
height: 100px;
width: 100px;
}
#b {
height: 100%;
width: 100%;
}
所以#b
是100%的高度,这意味着它正在取其父容器块的高度,即500px
,问题在于overflow: hidden;
似乎不起作用,#b
未被剪切。
在另一方面,如果我具有相同属性包#a
和#b
与另一DIV如body
上述我所期望的结果:
#wrap {
height: 500px;
width: 500px;
overflow: hidden;
}
#a {
height: 100px;
width: 100px;
}
#b {
height: 100%;
width: 100%;
}
与此HTML当然:
<body>
<div id="wrap">
<div id="a"></div>
<div id="b"></div>
</div>
</body>
我的问题是为什么div
和body
似乎有不同的行为具有相同的属性?有什么办法可以在没有包装的情况下获得相同的效果?
为了说明我已经创建了两个jsFiddles问题:
的jsfiddle与身体标记的包装:http://jsfiddle.net/3AMtG/
的jsfiddle用div标签的包装:http://jsfiddle.net/2QWn3/具有相同属性
两个jsFiddles产生不同结果。这是为什么?
我看不出你的两个实例有什么区别,这也许是重点,我猜一个body标签比div标签更具基本价值,每个浏览器都有自己的渲染方式等等@Firefox 19.0.2 – 2013-03-17 15:01:54