2015-08-20 55 views
0

我正在嘗試創建跨越其包含元素的100%的均等div。您可以查看小提琴here。如何編寫代碼以跨越容器側面的div?Flexbox:如何創建縮略圖以跨越容器寬度的100%?

HTML

<div class="container"> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
    <div></div> 
</div> 

CSS

.container { 
    display: flex; 
    flex-flow: row wrap; 
    width: 100%; 
    background: blue; 
} 
.container div { 
    width: 24%; 
    height: 2.5em; 
    background-color: red; 
    margin-right: 1%; 
    margin-bottom: 1em; 
    box-sizing: border-box; 
} 

從本質上講,我試圖複製類似這樣:

enter image description here

+2

您是否希望每個孩子的div跨越到25%的它的父容器或100%,每格一個全寬度的容器?在上面的屏幕截圖中,div並沒有跨越25%或100%,但25%意味着每行4 div,100%意味着每行1 div。 –

回答

3

對於n每行元素,有n-1的空白。 如果你想要一個1%的間隙,這意味着divs可以佔用每行4個元素的寬度的97%。

所以你需要設置寬度爲97/4 = 24.25%並且每4個孩子取消保證金。

.container { 
    display: flex; 
    flex-flow: row wrap; 
    width: 100%; 
    background: blue; 
} 
.container div { 
    width: 24.25%; 
    height: 2.5em; 
    background-color: red; 
    margin-right: 1%; 
    margin-bottom: 1em; 
    box-sizing: border-box; 
} 

.container div:nth-child(4n) { 
    margin-right:0; 
} 

http://jsfiddle.net/rq1vkdcg/10/

相關問題