BFC和IFC
Box: CSS布局的基本单位 Box 是 CSS 布局的对象和基本单位, 直观点来说,就是一个页面是由很多个 Box 组成的。元素的类型和 display 属性,决定了这个 Box 的类型。 不同类型的 Box, 会参与不同的 Formatting Context(一个决定如何渲染文档的容器),因此Box内的元素会以不同的方式渲染。让我们看看有哪些盒子: BFC 快级格式化上下文 block-level box:display 属性为 block, list-item, table 的元素,会生成 block-level box。并且参与 block fomatting context; (块元素参与BFC) IFC 内联格式化上下文 inline-level box:display 属性为 inline, inline-block, inline-table 的元素,会生成 inline-level box。并且参与 inline formatting context; (行内元素参与IFC) run-in box: css3 中才有, 这儿先不讲了。 Formatting context 是 W3C CSS2.1 规范中的一个概念。 它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系和相互作用。 最常见的 Formatting