BFC概念:是块级格式化上下文。是一种规范,规定了元素的排列方式,不同的bfc里面的元素的排列是互不影响的。
创建bfc的情况:
1.float不为none
2.overflow
3.display: inline-block | flex ;
4.position: fixed | absolute ;
应用:
1.解决margin的粘连问题(父子)
方式1: 给父元素设置透明边框 transparent
方式2: 用padding实现 【记得修改高度】
方式3: 给父元素设置 overflow:hidden; [所有让父元素或者子元素触发bfc的代码,都能解决粘连]
2.margin的塌陷问题 (兄弟)
方式: 在一个兄弟身上设置足够的间隔
3.清除浮动
4.布局 【左边固定,右边自适应 / 左中右布局】