元素溢出的处理方法、浮动及清除浮动的方法

140 阅读1分钟

overflow(处理子元素在父元素中溢出)

image.png

  • visible (默认值)子元素会从父元素中溢出,在父元素外部的位置显示
  • hidden 溢出的内容会被裁剪 不会显示
  • scroll 生成两个滚动条,通过滚动条来查看完整的内容
  • auto 根据需要生成滚动条

浮动float

  • left 元素在左侧浮动
  • right 元素在右侧浮动
  • none 元素不浮动 加了浮动元素就脱离了文档流,其父元素就包不住,无法称起父元素,可能会导致父元素的高度塌陷

image.png

解决浮动引起父元素的高度塌陷的方法 clear:

  • left 在左侧不允许浮动元素
  • right 在右侧不允许浮动元素
  • both 在左、右两侧不允许浮动元素
  • none 默认值。允许浮动元素出现在两侧
  1. 在浮动元素的后面添加一个空的块元素并设置clear:both

image.png 空div会造成HTML代码冗余

  1. 给父元素设置高度

image.png 元素固定高会降低扩展性

  1. 给父元素设置overflow:hidden;属性

image.png 下拉列表框的场景不能用

  1. 给父元素添加一个内容为空的::after伪类并设置为块元素,然后设置clear:both

image.png 写法比上面稍微复杂一点,但是没有副作用(推荐使用)