在下面的代码中,我希望在div a和div b之间看到15px的垂直空间。为什么我看不到任何空间?编辑:很多人都没有回答这个问题。我不希望得到一些有用的东西,我想要解释我所看到的行为。
<div class="a">
<span> lkjjj </span>
</div>
<div class="b">
<span> lkj lkjl kjlj l </span>
</div>
.a { width: 50px; border: 1px solid gray; float: left; }
.b {
margin: 15px 0 0 0;
clear: both;
overflow: hidden;
border: 1px solid gray;
}
这是一个jsfiddle来说明。
答案 0 :(得分:3)
在.a
上,您已声明float:left
。这将导致它流过.b的边缘。 http://jsfiddle.net/nUNM6/1/
答案 1 :(得分:1)
没有空间,因为您在“a”上使用float:left
。
答案 2 :(得分:1)
你有漂浮和边缘崩溃
以下是彼此相邻的三个例子 http://jsfiddle.net/nUNM6/6/
仔细检查Firefox Firebug或Chrome Element-Inspector中.b
的边距
编辑
在jsfiddle中改变了一些东西
答案 3 :(得分:0)
a
块是浮动的,这会导致在计算b
的边距时将其计为空白区域。如果您将边距放在a
的底部,则可以使用。
答案 4 :(得分:0)
清除float:left
,您的保证金将有效
答案 5 :(得分:0)
您可以在两个div之间插入此代码,a&amp; B:
<div class="clear"></div>
使用这个CSS:
.clear {clear:both;}
这将使你的差距显示在两者之间。