如何理解BFC原理?

一、理解BFC概念

BFC是一个封闭独立的盒子,无论盒子里的元素怎么运作,都不会影响外部的元素,内部元素也不受外界干扰。

二、触发BFC的条件与作用
  • 条件
    1.float的值不为none
    2.overflow的值不为visible
    3.display的值为inline-block、table-cell、table-caption
    4.position的值为absolute或fixed

  • 作用:
    1.撑开父元素
    2.清除浮动
    3.防止外边距合并

三、BFC的应用
  • overflow属性的元素和它的子元素之间的margin之间的外边距不会发生合并
Paste_Image.png
Paste_Image.png
  • 解决浮动导致的高度塌陷问题(清除浮动)
    浮动元素脱离了文档流,父容器感知不到它的存在,觉得里面什么东西都没有,而且父容器本身又没有设置高度,没有任何东西支撑,所以会高度塌陷。

此为父容器高度塌陷:

Paste_Image.png

解决方法:
1.bfc。使父容器形成bfc,包含住浮动元素。

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,817评论 1 92
  • 一,浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响? 浮动模型是一种可视化格式模型,浮动...
    DeeJay_Y阅读 908评论 0 4
  • relative:生成相对定位的元素,通过top,bottom,left,right的位置相对于其正常位置进行定位...
    zx9426阅读 977评论 0 2
  • 一、在什么场景下会出现外边距合并?如何合并?如何不让相邻元素外边距合并?给个父子外边距合并的范例 在CSS当中,相...
    dengpan阅读 603评论 0 0
  • 1. 在什么场景下会出现外边距合并?如何合并?如何不让相邻元素外边距合并?给个父子外边距合并的范例 外边距合并:外...
    进击的阿群阅读 948评论 1 2