什么是 BFC

1、讲 BFC 之前,先了解有哪些文档流

  • 普通流
  • 块状元素都会在包含元素内自上而下按顺序堆叠分布。在默认状态下,块状元素的宽度为100%,占据一行显示,不管这个元素是否包含内容,宽度是否为100%
  • 行内元素都会在包含元素内从左到右水平分布显示,类似于文本流,超出一行后会自动换行显示,然后继续从左到右按顺序流动,以此类推
  • 定位流(绝对定位)

元素会整体脱离普通流

  • 浮动流

元素首先按照普通流的位置显示,然后根据浮动的方向尽可能的向左或向右边便宜

2、BFC 是什么

BFC 属于普通流,是一个独立的区域,渲染规则和外部无关

特点:

  • 垂直方向上,自上而下排列,和文档流的排列方式一致
  • 在BFC中上下相邻的两个容器的 margin 会重叠
  • 计算BFC的高度时,需要计算浮动元素的高度
  • BFC区域不会与浮动的容器发生重叠
  • BFC是独立的容器,容器内部元素不会影响外部元素
  • 每个元素的左 margin 值和容器的左 border 相接触

3、BFC产生的方法

  • 根元素:body;
  • 元素设置浮动:float 除 none 以外的值;
  • 元素设置绝对定位:position (absolute、fixed); 非 relative
  • display 值为:inline-block、table-cell、table-caption、flex等;
  • overflow 值为:hidden、auto、scroll;非 visible

4、BFC 能解决什么问题 

  • 解决 margin 重叠问题
  • 解决高度塌陷的问题(清除浮动)
  • 阻止元素被浮动元素覆盖

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值