2015-12-08 72 views
0

如何將兩個div並排放置,並將第三個div放在其下方?就像這樣:將兩個div對齊,並在它們下方放置第三個div

enter image description here

我當前的代碼是象下面這樣:

HTML:

<div id="container"> 
    <div class="div-1">div1</div> 
    <div class="div-2">div2</div> 
    <div class="div-3">div3</div> 
</div> 

CSS:

#container { 
    position: absolute; 
} 

.div-1 { 
    float: left; 
    width: 45%; 
    padding: 2%; 
} 

.div-2 { 
    clear: both; 
} 

.div-3 { 
    float: right; 
    width: 45%; 
    padding: 2%; 
} 
+0

什麼是目前你的編碼的結果呢? –

+0

@ott - 現在我在div3上面有很大的空間。我試圖用margin-top縮小這個差距,但是隨着div3內容的變化,它會打破。 – almondn

+0

爲什麼不只是改變你的div的順序,以便第二個div正確地切到下一行,即http://jsfiddle.net/661bgfsy/ – BuddhistBeast

回答

2

您可以使用Flexbox的

#container { 
 
    display: flex; 
 
    flex-direction: row; 
 
    flex-wrap: wrap; 
 
} 
 

 
#container div { 
 
    padding: 20px; 
 
    border: 1px solid black; 
 
    margin: 10px; 
 
} 
 

 
.div-1, .div-3 { 
 
    flex: 1 1 0; 
 
} 
 

 
.div-2 { 
 
    flex: 100%; 
 
    order: 3; 
 
}
<div id="container"> 
 
    <div class="div-1">Div 1</div> 
 
    <div class="div-2">Div 2</div> 
 
    <div class="div-3">Div 3</div> 
 
</div>

+0

感謝它運作良好,但沒有flexbox也可以實現嗎? – almondn

+0

那麼,如果你想要的順序'1,3,2'的元素,我認爲flexbox是最好的解決方案。如果沒有,那麼我建議你使用引導程序來獲得該佈局,並且它會響應。 –