CSS 浮动与定位


1,清除嵌套中的浮动
元素嵌套中,如果父元素不设置高度,而子元素box2添加浮动,子元素浮动使其脱离文档流,导致父元素和子元素不在一个层面上,父元素没有内容,导致无法撑开。

CSS 浮动与定位
CSS 浮动与定位
可以看出子元素无法撑开父元素的容器,这样会影响到后面元素的布局,在子元素浮动的同时让父元素保持原有的位置和大小,就要用清除嵌套中的浮动了。

1,父元素固定宽高

CSS 浮动与定位

CSS 浮动与定位
这种方法对内容扩展不太方便,不建议使用。了解即可。

2,父元素浮动
通过给父元素设置浮动来清除嵌套中的浮动,这种方法使子元素和父元素在同一平面,缺点在于父元素浮动会影响后面元素的布局。

CSS 浮动与定位
CSS 浮动与定位
3,父元素overflow属性
将父元素overflow属性值设为hidden或scroll来清除嵌套中浮动,但overflow会对溢出对元素进行隐藏或添加滚动条。

CSS 浮动与定位
CSS 浮动与定位
4,父元素设置display属性
把父元素display属性值设为inline-block来清除嵌套中浮动,inline-block会使元素具备块和内联的特点,对布局有影响。
CSS 浮动与定位
CSS 浮动与定位
5,设置空标签
在父元素中加一个空标签来清除浮动,把父元素撑开。

CSS 浮动与定位
CSS 浮动与定位
6,after伪类
CSS 浮动与定位
CSS 浮动与定位
通过伪类将父元素撑开:
CSS 浮动与定位
CSS 浮动与定位