css--认识浮动及清除浮动

134 阅读1分钟

1、认识浮动

a.浮动用于创建浮动窗,使其脱离文档流,并将其移动到一边。

b.浮动的元素会一行内显示,并且元素顶部对齐。

c.浮动的元素会具有行内块元素的特性,比如左盒子和右盒子都进行左浮动,那么这俩盒子将顶部对齐的方式在一行内展示。

选择器 {
    floatnone/left/right;
}

2、为什么要进行浮动?

a.可以让多个div在一行内展示。传统的display:inline-block方式可以实现,但盒子之间会存在缝隙。 image.png

b.可以实现两个盒子左右对齐。一个盒子在左边,一个盒子在右边。(左盒子float:left,右盒子float:rightimage.png

3、浮动带来什么问题?

正常情况下父元素未设置高度时,其高度会被子元素的内容所撑起,但是浮动会使元素脱离文档流,因此如果父元素未设置高度,那么会导致父元素高度塌陷。而一旦父元素高度丢失,那么父元素的相邻元素会往上排,导致该元素跑到浮动元素的下方。如下图: image.png

4、如何清除浮动?

父元素增加overflow:hidden

image.png

父元素上增加伪元素,并设置clear:both

image.png

给浮动元素的后面增加个空的div,并给该div设置 clear: both

image.png

5、清除浮动后的效果

image.png