BFC IFC GFC FFC的理解

FC:formatting context 格式化上下文。
css2.1定义了 BFC 块级格式化上下文 + IFC 行内格式化上下文。
css3新定义了 GFC网格布局格式化上下文 + FFC 自适应格式化上下文。

其实就是对于块级盒模型、行内盒模型的一些渲染规则的定义,决定了元素如何排列、相互影响等。

BFC规定:浮动元素与生成BFC的元素不互相覆盖,所以可以用来进行多列布局,如:左右两列分别左右浮动,中间的内容区自适应。
子元素浮动,父元素设置overflow:hidden的原理是:通过设置overflow:hidden,触发父元素生成BFC块(渲染规则规定:BFC块之间外边距不互相重叠),在计算高度时包含浮动子元素。

GFC:是针对那些display:grid的元素的渲染规则。
网格布局并没有flex布局应用的广泛,flex相对常用一些,但是用grid实现多行布局,更加好理解。

.parent { display: grid;grid-columns: 100px 200px 1fr;grid-rows:50px 200px 1fr;}//定义网格的行数、列数
.cell {grid-column:2;grid-row: 1;}//定义单元格的位置
//或者通过单元格命名的方式,此处不详述

FFC:是针对display:flex的元素的渲染规则(流式布局,自适应伸缩)。

.parent{display:flex;flex-direction:row || column;align-items:flex-start || flex-end || center || strech || baseline;justify-content: flex-start || flex-end || center || space-around || space-between;align-self: auto};//定义布局方向、对齐方式等
.cell {flex:1;}//定义自身占比

参考文章:
http://www.cnblogs.com/dingyufenglian/p/4845477.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,826评论 1 92
  • BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用...
    一木_qintb阅读 1,542评论 0 2
  • BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用...
    _Yfling阅读 429评论 0 0
  • 作者:Zhouxing Su链接:https://www.zhihu.com/question/19689000/...
    HowieCheng阅读 2,903评论 0 0
  • 所谓房产,是指有墙面和立体结构,能够遮风避雨,可供人们在其中生活、学习、工作、娱乐、居住或贮藏物资的场所。 在中国...
    五知水阅读 209评论 0 1