清除CSS浮动的方式有多少种,为何要清除浮动
Admin 2022-07-12 群英技术资讯 1010 次浏览
本篇内容介绍了“清除CSS浮动的方式有多少种,为何要清除浮动”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一,我们为什么要浮动
为什么浮动,为什么要清除浮动,以及清除浮动的方法。在网页布局的时候有时需要元素并排显示,如果不选择浮动,那么那些块状元素就会一行一行显示,占用空间不说,用户体验也是极为不好的。
以下是没有浮动的元素代码
<div class=“box”>
<div class=“box01”></div>
<div class=“box02”></div>
</div>
.box{
background: #000;
}
.box01{
width: 100px;
height: 100px;
background: red;
}
.box02{
width: 100px;
height: 100px;
background: yellow;
}
1-1图是没有浮动的元素,1-2图是外层容器的宽高,下文会说到此次用意


在我们给元素加上浮动之后,布局就变了,两个div并排显示了,如图1-3,是不是很神奇,哈哈
但是大家有没有发现最外一层的div背景色没了,高度也变成了0,因为元素脱离的文档流,在最外层的div中不占空间,这时我们就需要清除浮动,清除由子元素浮动给父元素带来坍塌的影响。(注意这里清除浮动不是指之前给子元素设置的浮动,二是清除浮动给父元素带来的影响,希望大家能明白)。

二清除浮动有三种方法:
第一种:clear:both;
在父元素的里面添加一个类clear的div(跟box01,box02同级),然后再为这个类添加属性值clear:both;便可以清除浮动,以下是代码以及清除浮动之后的效果如图1-3
<div class=“box”>
<div class=“box01”></div>
<div class=“box02”></div>
<div class=“clear”></div>
</div>
.box{
background: #000;
}
.clear{
clear: both;
}
.box01{
width: 100px;
height: 100px;
background: red;
float: left;
}
.box02{
width: 100px;
height: 100px;
background: yellow;
float: left;
}

可以看到背景色出来了,而父元素的高正是100px,这是子元素撑开的。
第二种:overflow:hidden;
在父元素添加overflow: hidden;也可以清除浮动,如下css代码,但不提倡使用这个方法,overflow: hidden;还有一个意思就是隐藏超出的部分,处理不好还是会给页面带来麻烦。
.box{
background: #000;
overflow: hidden;
}
第三种:clearfix;
如果你的页面使用bootstrap框架,引入css文件,给父元素添加clearfix便可以清除浮动,这也是平时工作中最常用也是最受程序员喜欢的一种方法,只需添加一个类便可,而clear:both则是向页面多加了一个div。所以小编向大家推荐第三种方法。
如果你的页面使用的不是bootstrap框架,那么也有源码供初学者参考,向clearfix添加伪类实现清除浮动。
<div class=“box clearfix”>
<div class=“box01”></div>
<div class=“box02”></div>
<div class=“clear”></div>
</div>
.box{
background: #000;
}
.clearfix:before,.clearfix:after{
content: ”;
display: table;//可以很好的解决浏览器兼容问题
}
.clearfix:after{
clear: both;
}
.box01{
width: 100px;
height: 100px;
background: red;
float: left;
}
.box02{
width: 100px;
height: 100px;
background: yellow;
float: left;
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
用CSS3怎样做元素的动态左右翻转效果?在CSS中,我们要实现动态左右翻转效果可以使用CSS3中的animation属性给元素添加动画效果,下文有详细的介绍,有需要的朋友可以参考,接下来就跟随小编来一起学习一下吧!
篇文章给大家分享的是用CSS怎样做一个动态的二级菜单效果。小编觉得挺实用的,因此分享给大家做个参考,实现效果及实现代码如下,感兴趣的朋友接下来一起跟随小编看看吧。
什么是盒子呢?拿下举例,我们可以把每个红框都比作一个盒子,他们可以是任意的HTML元素。盒子模型所谓盒子模型:就是把HTML页面中的布局元素看作是一个矩形的盒子,也就...
HTML表头怎样设置垂直对齐,方法是什么?想对这方面内容了解清楚的朋友,可以看看小编所整理的资料。
这篇文章主要介绍了HTML5 3D旋转相册的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008