块级格式化上下文,为视觉格式化模型的一种,以常规流块盒元素(div,p,ulli,header等)为主,主要起到布局,隔绝外部属性影响,呈现最佳视觉的作用 。
它主要有三个大类元素,第一个是html,为整个页面的根元素,与外部文件相隔离,内部处理排版格式。
第二是浮动元素与绝对定位元素,当块盒元素被其所修饰,就会自成一块,成为bfc独立模块,不被外界所影响。
第三个为overflower,当元素被其修饰后,若不为默认属性vict,就会成为bfc,自成一块。
bfc主要有三个特性:
1.bfc元素内部会计算浮动元素高度,若不为bfc,高度会塌陷,需要伪元素撑开,成为bfc后,其内部会计算浮动元素高度,自适应高度。
2.当bfc元素遇到外部浮动元素时,会避开并并行展示。
3.bfc与bfc元素不会发生外边框合并现象,没有三大属性修饰的元素,常规流会出现外边框合并现象,左边元素右边隔15px,右边元素左边隔20px,浏览器会取最大值20px作为最终计算结果,并展示在页面上,而成为bfc后,合并消失,按正常隔离。
input表单元素为可替换元素,行盒,内部是什么属性就是什么属性,与img相似,大多数内部元素无法修改,有行块盒属性。