CSS流体布局:具有不同高度的“堆叠”div

时间:2013-06-14 17:28:37

标签: html css layout

我正在试图弄清楚是否可以创建一个CSS布局,其中具有float: left属性的div不会创建一个新的“行”类布局,但是真的很流畅。

更具体地说,这就是我现在所拥有的:

enter image description here

所有块都是div,具有float: left样式,某些边距和不固定的高度属性。正如您所看到的,每个足够高的块形成具有相同高度的“线”或“行”。我想要实现的是 - 让所有div元素只服从他们自己的margin样式,而不是创建一个具有相似高度的行。

所以问题是它是否可能,如果是,那么它是如何实现的呢?

HTML (省略了一些块):

<div id="blocks_wrapper">
<div class="strblock rouded_3px infobox">
    <div class="dElement">
        <div class="d_option">Web</div>
        <div class="d_value"><a href="" rel="nofollow" target="_blank"></a></div>
    </div>
</div>
<div class="strblock rouded_3px infobox">
    <div class="dElement">
        <div class="d_option">Phone</div>
        <div class="d_value"></div>
    </div>
</div>
<div class="strblock rouded_3px infobox">
    <div class="dElement">
        <div class="d_option">Thu—Fri</div>
        <div class="d_value">11:00—19:00</div>
    </div>
</div>
<div class="strblock rouded_3px infobox">
    <div class="dElement">
        <div class="d_option">Pricing</div>
        <div class="d_value">40 USD</div>
    </div>
</div>
<div class="strblock rouded_3px infobox">
    <div class="dElement">
        <div class="d_option">Address</div>
        <div class="d_value">0.2km from Historic U.S. 66, Seligman, AZ 86337, USA</div>
    </div>
</div>
<div class="strblock rouded_3px infobox">
    <div class="dElement">
        <div class="d_option">Coordinates</div>
        <div class="d_value">
            35.52890, -113.23200<br>
            N35°31'44", W113°13'55"
        </div>
    </div>
</div>

<div class="clear"></div>
</div>

CSS

#blocks_wrapper .strblock { float: left; margin-bottom: 3px; overflow: hidden; }
#blocks_wrapper .infobox { width: 19%; padding: 3px; }
#blocks_wrapper .infobox .dElement .d_option { display: inline-block; width: 90px; overflow: hidden; font-weight: bold; }
#blocks_wrapper .infobox .dElement .d_value { display: inline-block; width: 155px; vertical-align: top; }

1 个答案:

答案 0 :(得分:2)

我知道现在已经很晚了,但也许这会对某人有所帮助。 http://masonry.desandro.com