這裏的水平和垂直調整是我的問題:Flexbox,就如何有一個項目,同時保留高度
我有一個容器內的3個容器與容器內的內容。
我想讓這些容器中的每一個都填滿剩下的任何房間,如果其中一個被垂直和水平移除。
我使用flexbox flex-flow: row wrap
,當我們說我們刪除兩個底部容器中的一個時,這個工作很好。
然後爲了讓它們在垂直方向重新調整大小,我使用高度自動屬性,並且可以預測容器元素填充了其容器的剩餘高度。
<!DOCTYPE html>
<html>
<head>
<style>
div{border: 1px solid black}
html, body{height: 100%; width: 100%;}
#container1{
width: 100%;
height: 100%;
display: flex;
flex-flow: row wrap;
}
#subContainer3, #subContainer2{
flex: 1 49%;
}
#subContainer1{
flex: 1 100%;
}
.content{
background-color: lightgray;
height: 90%;
}
</style>
</head>
<body>
<div id="container1">
<div id="subContainer1">
<div class="content"></div>
</div>
<div id="subContainer2">
<div class="content"></div>
</div>
<div id="subContainer3">
<div class="content"></div>
</div>
</div>
</body>
</html>
但是因爲我沒有爲子容器明確的高度,在其中所有的內容將無法爲子容器的百分比。
我該如何達到預期的目標:讓子容器在行和列方向上同時調整大小,同時讓它們的內容佔其高度的百分比?
**** ****注意
作爲一個額外的評論,而這可能會明顯一些,通過柔性盒確定的任何高度仍然會受到任何孩子的div嘗試使用百分比高度無法識別。例如,如果我們的內容劃分了他們自己有孩子的地方,而這些孩子想要成爲他們父母身高的百分比,那麼我們必須在列方向上使用彈性框來建立這個,而不是%高度。
我認爲'height:90%;'不起作用在這裏,作爲最大的「內容」決定外部容器的高度,以及柔性排,並且你自己說「高度:90%」? –
對不起,我知道高度90%不起作用,我只是用代碼來說明問題。我想要一個解決方案,我可以保持90%的高度,同時可以讓subContainer div垂直展開。一旦我設置了subContainer的高度,內容高度(90%)就可以工作,但如果我取消讓我們說tio的div,剩下的div不會擴大來填充高度。 –
所以有'.content'的兄弟姐妹?你想讓'content'在'subContainer'中按比例增加(高度的9倍)?你想要的設計不清楚=/ –