当且仅当:
时,两个边距相邻都属于参与相同块格式化上下文的流入块级框
...
以下是演示:http://jsfiddle.net/yaway/Pz4QZ/
HTML
<div class="box-a bfc">drei</div>
<div class="box-b bfc">vier</div>
CSS
* {
margin:0;
padding:0
}
.box-a,
.box-b {
height:100px;
margin:10px 0;
border:1px solid #fff;
}
.box-a {
background-color:#fee
}
.box-b {
background-color:#efe
}
.bfc {
overflow:hidden;
}
框“drei”和“vier”的边距已经崩溃
所以我想知道初始包含块是否建立了块格式化上下文(BFC),因此这两个框位于同一个BFC中。
但是我没能在W3C中找到它。
答案 0 :(得分:0)
根元素所在的包含块是一个称为初始包含块的矩形。
即。它包含HTML文档的<html>
元素。
它确实建立了一个块格式化上下文,但是示例中的两个元素不能成为它的子元素,所以可能还有其他东西首先建立一个新的块格式化上下文。
我无法想到两个display: block
,float: none
,position: static
相邻兄弟姐妹不会共享块格式上下文的任何情况。