高度塌陷和BFC

123 阅读1分钟

高度塌陷

  • 在浮动布局中,元素的高度默认是被子元素撑开的,当子元素浮动后,其会完全脱离文档流,子元素从文档流中脱离将会无法撑起父元素的高度,导致父元素的高度丢失;父元素的高度丢失后,其下的元素会自动上移,导致页面的布局混乱,所以高度塌陷是浮动布局中比较常见的一个问题。
.clearfix::before,
.clearfix::after{
    content:'',
    display:table,
    clear:both
}
`这个样式可以同时解决高度塌陷和外边距重叠问题`

BFC

  • 块级格式化环境(Block Formatting Context )
  • BFC是css中的一个隐含属性,可以为一个元素开启BFC,开启后该元素会变成一个独立的布局区域
  • 特点:开启的元素不会被浮动所覆盖;子元素和父元素的外边距不会重叠;元素可以包含浮动的子元素
  • 开启方法:设置元素的浮动(不推荐);将元素设置为行内块元素(不推荐);将元素的overflow设置为一个非visible的值(常用overflow:hidden)