CSS中清除浮动的作用以及如何清除浮动

Wesley13
• 阅读 732

1.什么是浮动,浮动的作用
“浮动”从字面上来理解就是“悬浮移动、非固定”的意思。块级元素(div、table、span…)是以垂直方向排列,而在前端界面中往往要使用水平布局块级元素使界面更美观。这就要用到浮动了。被设置浮动的元素会脱离标准流(竖直排列),从而达到水平排列的效果。
例如.
未设置浮动时图1中的两张图片竖直排列在父级元素(橙色区域)中。
图1
CSS中清除浮动的作用以及如何清除浮动
给承载图片的元素设置浮动后,如下图2显示

图2

CSS中清除浮动的作用以及如何清除浮动
注:图1未设置父级元素高度。图2设置了父级元素的高度。

2.为什么要清除浮动

未设置浮动时显示图1效果。
当父级元素设置的高度小于子级元素(子级浮动)的高度时会出现如下图3显示结果。此时设置了浮动的子元素已经脱离了标准流,换句话说就是子元素浮动在父级元素之上了。
CSS中清除浮动的作用以及如何清除浮动
如果在块级元素(橙色)下方添加一个兄弟块级,两个浮动的图片也会浮动在它父级元素的兄弟元素上方。
CSS中清除浮动的作用以及如何清除浮动
如果父级元素只加宽度不加高度,则父级元素不会显示(橙色区),随后设置的兄弟元素会替代前一个元素。
我们想要达到的目的是子元素在父级元素内浮动并且父级元素在未设置高度的时候能够显示。所以就要清楚浮动了。

CSS中清除浮动的作用以及如何清除浮动
3.如何清除浮动
方法一,给浮动元素添加一个兄弟元素,兄弟元素的CSS设置clear:both;。
方法二,给浮动元素的父级元素的CSS添加overflow: auto; zoom: 1; //zoom: 1; 出发IE hasLayout。
方法三,
.outer {zoom:1;}
.outer :after {clear:both;content:’.’;display:block;width: 0;height: 0;visibili ty:hidden;}

例如:http://www.runoob.com/css/css-float.html

点赞
收藏
评论区
推荐文章
LinMeng LinMeng
3年前
小记面试题-2021
CSS类1.解释浮动及其工作原理浮动的元素可以向左或者向右移动,直到它的外边缘碰到包含元素(父元素)或另一个浮动元素的边框为止。要想使元素浮动,必须为元素设置一个宽度。虽然浮动的元素已不在文档流中,但是它浮动后所处的位置依然在浮动之前的水平方向上。因为浮动元素不在文档流中,所以文档流中的块元素表现的就像浮动元素不存在一样,下面的元素会填补原来的位置。有些
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
CSS
在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了,下面总结8种清除浮动的方法,测试已通过iechromefirefoxopera,需要的朋友可以参考下清除浮动是每一个web前台设计师必须掌握的机能。css清除浮动大全,共8种方法。 浮动会使当前标签产生向上浮的效果,同时会影响到前后标签、父级标签的位置及widthhei
Wesley13 Wesley13
3年前
BFC清除浮动
BFC就是清除浮动用来处理文档脱离文档流的问题清除浮动的方法:a、父元素也添加一个浮动    产生弊端就是:margin不能使用b、给父元素添加一个:display:inlineblock     弊端同a一样:无法使用marginc、给父元素添加高     
Wesley13 Wesley13
3年前
CSS浮动和清除浮动
1.浮动float  div配合float浮动来做页面的布局,浮动最常用的地方就是用来做布局。只有一个标签设置了浮动float属性,就会变成块级标签。!(https://img2018.cnblogs.com/blog/1468469/201901/1468469201901061724118811574074745.png)<!
Wesley13 Wesley13
3年前
CSS清除浮动大全共8种方法
在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了,下面总结8种清除浮动的方法,测试已通过iechromefirefoxopera,需要的朋友可以参考下清除浮动是每一个web前台设计师必须掌握的机能。css清除浮动大全,共8种方法。浮动会使当前标签产生向上浮的效果,同时会影响到前后标签、父级标签的位置及widthheig
Wesley13 Wesley13
3年前
CSS清除浮动的4种方式
1、使用空标签清除浮动。我用了很久的一种方法,空标签可以是div标签,也可以是P标签。这种方式是在需要清除浮动的父级元素内部的所有浮动元素后添加这样一个标签清除浮动,并为其定义CSS代码:clear:both。此方法的弊端在于增加了无意义的结构元素。2、使用overflow属性。此方法有效地解决了通过空标签元素清除浮动而不得不增加无意代码的弊端。使用
Wesley13 Wesley13
3年前
CSS 清除浮动 伪类
参考链接:https://www.cnblogs.com/yingsu/p/7261904.html不清楚浮动的结果和影响不再描述,清除浮动的代码别处也有很多,每种方法都有十分简洁的代码,我今天学到的是有伪类来清除浮动。他的原理简单来说就是再已经浮动的元素后面添加一个什么也没有的元素,以此来消除子元素因为浮动而让父元素塌陷的一种解决办法。
Wesley13 Wesley13
3年前
CSS复习笔记二:浮动和清除浮动
 一、浮动的性质1、浮动的元素脱离标准文档流,并且可以设置宽度和高度。2、浮动的元素相互贴靠3、浮动的元素有“文字环绕”效果       含有图片的div浮动,段落不浮动,文字会环绕图片。4、div浮动了且没有设置宽度,那么将自动收缩为内容的宽度。浮动(脱标)的元素是不能把容器惩处高度的。二、浮动的清除
Wesley13 Wesley13
3年前
CSS基础知识(定位、浮动)
12、浮动!(https://oscimg.oschina.net/oscnet/80b6fe9ed0e2c74d146667b2fdbd187f21a.jpg)特点:将当前元素脱离文档流   float:left即左浮动 float:right即右浮动注:\父与子元素,设置子元素浮动不能超出父元素的范围