0

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

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

在此处输入图像描述

所有块都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; }
4

1 回答 1

2

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

于 2013-11-06T22:36:30.847 回答