1
我tyring巢三個divs並有每個。我希望外觀看起來像每個父級比它的子級大10px,並且在水平寬度變化時能夠響應。當我用兩個DIV做這件事時,一切正常。嵌套DIV與CSS的窘境
CSS
#holder
{
margin:auto;
width:90%;
height:150px;
background-color:#999;
padding:10px;
border: 1px solid;
}
#inside
{
position:relative;
width:100%;
height:100%;
background-color:#9F0;
border: 1px solid;
}
HTML
當我添加了第三個孩子,這時候就一切都錯了。中間的孩子(綠色的盒子)部分移出父母。
CSS
#holder
{
margin:auto;
width:90%;
height:150px;
background-color:#999;
padding:10px;
border: 1px solid;
}
#inside
{
position:relative;
width:100%;
height:100%;
background-color:#9F0;
border: 1px solid;
padding:10px;
}
#header
{
position:relative;
width:100%;
height:100%;
background-color:#C00;
}
HTML
<div id="holder">
<div id="inside">
<div id="header"/>
</div>
</div>
我明白填充和利潤率,而這些將增加箱子的 「真實」 的寬度和高度,但我不能弄清楚如何將這些盒子放在一起。事情我已經試過低於
- 有邊距和填充
- 不同%的兒童箱的寬度玩耍。這適用於某一點,但取決於瀏覽器窗口的寬度,子節點之間的距離比例會發生變化。
如果你打算爲'#持有者'的塊級後代保留'width'css屬性,那麼''持有者'和#持有者div'css都要加上'box-sizing:border-box;'規則。 [關於盒子大小的CSS屬性](http://www.w3schools.com/cssref/css3_pr_box-sizing.asp) – alexbusu
謝謝,這讓我一半在那裏。按照您的指示水平地在#holder內部獲得#inside和#header,但它們仍然退出#holder的底部。 再次感謝! – Ross
啊,但由於垂直距離沒有變化,我可以將#inside的高度從100%改爲130px,並且都是好的。謝謝! – Ross