方法:首先使用“父元素:after{content:”;display:block;}”语句在父元素底部插入并显示一个空的元素块;然后给该元素块添加“clear:both;”样式即可清除所有浮动。

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。
什么时候需要清除浮动?清除浮动有哪些方法?
1、对元素进行了浮动(float)后,该元素就会脱离文档流,浮动在文档之上。在CSS中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。
float主要流行与页面布局,然后在使用后没有清除浮动,就会后患无穷。
立即学习“前端免费学习笔记(深入)”;
先看实例:
123
.outer{ border:1px solid #ccc; background:#fc9; color:#fff; margin:50px auto; padding:50px;}.div1{ width:80px; height:80px; background:#f00; float:left; }.div2{ width:80px; height:80px; background:blue; float:left; }.div3{ width:80px; height:80px; background:sienna; float:left; }

如上图所示,是让1、2、3这三个元素产生浮动所造成的现象。
下面看一下,如果这三个元素不产生浮动,会是什么样子?
.outer{ border:1px solid #ccc; background:#fc9; color:#fff; margin:50px auto; padding:50px;}.div1{ width:80px; height:80px; background:#f00; /*float:left;*/ }.div2{ width:80px; height:80px; background:blue;/* float:left; */}.div3{ width:80px; height:80px; background:sienna;/* float:left;*/ }

如上图所示,当内层的1/2/3元素不浮动,则外层元素的高是会被自动撑开的。
所以当内层元素浮动的时候,就出现以下影响:
背景不能显示;边框不能撑开;margin设置值不能正确显示。
2、清除浮动—–:after方法。(注意:作用于浮动元素的父亲)
原理:利用:after和:before来在元素内部插入两个元素块,从而达到清除浮动的效果。其实现原理类似于<div style="clear:both;
">
微信扫一扫
支付宝扫一扫