2013-02-25 55 views
1

我有這個佈局一組的div:安排inline-block的div的很好

div.post_summary { 
    clear: none; 
    width: 170px; 
    display: inline-block; 
    float: left; 
    margin: 5px; 
    background-color: #FF5900; 
} 

現在的樣子:

enter image description here

但我希望它看起來像:

enter image description here

divs的順序決不重要。我怎樣才能做到這一點?

+3

可能的重複[如何複製pinterest.com的絕對div堆疊佈局](http://stackoverflow.com/questions/7109362/how-to-replicate-pinterest-coms-absolute-div-stacking-layout) – 2013-02-25 17:48:28

+0

@TImCooper有沒有JavaScript解決方案呢? – Keelan 2013-02-25 18:06:04

回答

1

由於順序並不重要,你可以用CSS列做到這一點:

http://codepen.io/cimmanon/pen/CcGlE

div.container { /* container holding all of your `div.post_summary` elements */ 
    columns: 20em; /* desired width of the columns */ 
} 

div.post_summary { 
    margin: .5em; 
    background-color: #CCC; 
} 

div.post_summary:first-child { 
    margin-top: 0; 
} 

請務必檢查http://caniuse.com/#feat=multicolumn,看看哪些前綴需要。

+0

謝謝,但這與IE不兼容。是否有僅適用於所有瀏覽器的CSS解決方案? – Keelan 2013-02-25 18:30:54

+1

您的問題沒有指定瀏覽器支持。 CSS列或Flexbox(列方向)是純CSS的唯一選項,並且僅在IE10 +中可用。 – cimmanon 2013-02-25 18:40:56

+0

好的,謝謝你的回答,確實回答了這個問題。我不打算使用它,但無論如何,謝謝! – Keelan 2013-02-25 18:50:40