高度塌陷与BFC|CSS

75 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第15天,点击查看活动详情

文章概览

  • 高度塌陷
  • BFC

高度塌陷

 因为在浮动元素的布局中,子元素决定了父元素的高度,当子元素浮动后会脱离文档流,脱离文档流的子元素不会再撑起父元素的高度,这就导致了父元素高度的缺失。而父元素缺少高度,其余元素会自动上移补上,这会导致页面布局混乱。

开启元素BFC的方式

  • 设置元素浮动
  • 把元素设置为行内块元素
  • 对元素的overflow属性进行设置,设置为overflow hidden

前两种并不推荐

BFC

 BFC(Block Fromatting Context)块级格式化环境,是一个CSS中的隐含属性,主要用于作为元素来开启一个BFC,所开启的BFC元素会成为一个独立的布局区域。

特点

  • 开启BFC的元素不会被浮动元素覆盖。
  • 开启了BFC的元素与其父元素的边框不会重叠。
  • 开启了BFC的元素可以包含浮动的子元素。

clear的使用

 当不希望某个元素因为其他元素的浮动而受到影响改变位置时,可以使用clear属性来消除浮动元素所产生的影响。

clear可选值

  • left:消除左边浮动元素对当前元素产生的影响。
  • right:消除右边浮动元素对当前元素产生的影响。

补充:clearfix可以同时解决高度塌陷和外边框重叠的问题。

定位

 当编写一个网页时经常要使用到定位。

特点

  • 定位是一种高级的布局方式。
  • 定位可以把元素放到页面的任何位置。
  • 定位可以使用position属性进行设置。

可选值

  • static:默认值,元素静止。
  • relative:开启元素的相对定位。
  • absolute:绝对定位。
  • fixed:固定定位。
  • sicky:粘滞定位。