我希望内部div自动流向顶部。像 Pintrest UI
http://jsfiddle.net/zbbHc/127/
HTML
<div class="wrapper">
<div class="iB">Content<br>Content<br>Content<br></div>
<div class="iB">Content<br>Content<br>Content<br>Content<br>Content<br>Content<br></div>
<div class="iB">Content<br>Content<br>Content<br></div>
<div class="iB">Content<br>Content<br>Content<br>Content<br></div>
<div class="iB">Content<br>Content<br>Content<br>Content<br></div>
<div class="iB">Content<br>Content<br>Content<br></div>
<div class="iB">Content<br>Content<br>Content<br>Content<br></div>
</div>
CSS
.wrapper {
width: 100%;
background: red;
text-align: center;
}
.iB {
display:inline-block;
vertical-align:top;
width: 200px;
background: green;
}
答案 0 :(得分:1)
将display: block;
与float: left;
结合使用可省略此问题。但这需要一些额外的努力来集中整个集群。
另一种解决方法是屏蔽换行符:
<div class="iB">Content<br>Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br>Content<br></div>
答案 1 :(得分:1)
如果要动态生成HTML,只需在生成代码时注释掉内联div
之间的空白区域。
<div class="wrapper">
<div class="iB">Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br>Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br></div><!--
--><div class="iB">Content<br>Content<br>Content<br>Content<br></div>
</div>
答案 2 :(得分:0)
将font-size:0
添加到父元素。不要忘记为子元素定义font-size
:
.wrapper {
font-size: 0px;
}
.iB {
font-size:15px;
}
答案 3 :(得分:0)
我相信你正在寻找margin-left:-4px;
.iB {
display:inline-block;
margin-left:-4px;
}
http://jsfiddle.net/daCrosby/zbbHc/128/
要删除顶部的空格,您必须使用JavaScript,或将所有内容重新格式化为列。这有一些缺点,但它是一个无JS的解决方案。
HTML
<div id="hold">
<div class="wrapper">
<div class="iB">Content<br />Content<br />Content<br /></div>
</div>
<div class="wrapper">
<div class="iB">Content<br />Content<br />Content<br /></div>
</div>
<div class="wrapper">
<div class="iB">Content<br />Content<br />Content<br /></div>
</div>
</div>
CSS
#hold{
width:100%;
}
.wrapper {
float:left;
width: 33%;
}
.iB {
display:block;
}