Css 清除浮动的几种方法
Css清除浮动的几种方法
- 1. 为什么添加浮动
- 2. 为什么清除浮动
- 3. 清除浮动
- 1) 额外标签法
- 2) 利用 Css 的 overflow;
- 3) after伪元素清除浮动
- 4)after、before 双伪元素清除浮动
- 5)让父元素变成行内块元素
- 6)给父元素设置高度
1. 为什么添加浮动
在 html 中 的元素分为: 块级元素、行内元素,行内块元素、行内元素,html 中的块级元素都是单独一行显示的,有的时候我们需要它们并列一行显示就需要浮动
添加浮动的块级元素会自动转化成行内块元素
2. 为什么清除浮动
因为浮动脱离了文档流,会浮在下面未浮动的盒子上方,影响整体的布局
3. 清除浮动
1) 额外标签法
在浮动元素的下方添加一个空的块级元素并在 Css 中添加 clear 样式
clear 的元素只能通过调整自身来使自己不要和浮动元素排列在一起
.clear {/* both清除左右两侧浮动 *//* left 左 *//* right 右 */clear: both; }
缺点: 需要添加大量无语义的html元素,代码不够优雅,后期不容易维护。
2) 利用 Css 的 overflow;
给浮动元素的容器添加overflow:hidden;或overflow:auto;可以清除浮动,另外在 IE6 中还需要添加 *zoom: 1; 触发 hasLayout
在添加overflow属性后,浮动元素又回到了文档流,把父元素高度撑起,达到了清除浮动的效果。
.father {overflow: hidden;*zoom: 1;}
缺点:
overflow: auto 文本超过本身的宽度或高度会有额外的滚动条
overflow:hidden 会溢出隐藏
注意: 是给父元素添加 改样式
3) after伪元素清除浮动
.clearfix:after {content: "";display: block;height: 0;visibility: hidden; /* visibility 属性规定元素是否可见 hidden 隐藏 停职留薪 */clear: both;}.clearfix {*zoom: 1;/*ie6,7专门清除浮动的样式*/}
注意: 是给父元素添加 .clearfix 类名
4)after、before 双伪元素清除浮动
.clearfix:before,.clearfix:after {content: "";display: table; /* (类似 <table>)此元素会作为块级表格来显示,表格前后带有换行符 */}.clearfix:after {clear: both;}.clearfix {*zoom: 1;/*ie6,7专门清除浮动的样式*/}
注意: 也是给父元素添加 .clearfix 类名
5)让父元素变成行内块元素
.father {display: inline-block;vertical-align: middle; /* 设置元素的垂直对齐方式 */}
如果不添加 vertical-align 两个盒子上下之间会有个小缝隙
缺点: vertical-align 会影响里面文字和图片的对齐方式
6)给父元素设置高度
其实,以上的几种方法(额外标签法除外)最后都是让子元素撑起父元素从而给父元素一个高度,只不过,在实际开发中自己测量高度,而且不利于更新和维护,而且有些盒子高度不固定,不建议直接设高度
如果还有什么其他方法大家可以推荐一下,如果大家觉得文章那个的地方有问题的话请大家多多指教,让你我共同进步一起成长
Css 清除浮动的几种方法相关推荐
- CSS清除浮动的四种方法
CSS清除浮动的四种方法 第一种:使用div空标签法 第二种:父元素使用overflow: hidden 第三种:伪元素选择器:after 第四种:伪元素选择器:before + after 第一种: ...
- html中清除浮动的几种方式,清除浮动的几种方法-关于CSS清除浮动的几种方法
CSS清除浮动的3种方法,参考: 方法1: #test{clear:both;} #test为浮动元素的下一个兄弟元素 方法2: #test{display:block;zoom:1;overflow ...
- CSS清除浮动的几种方法
来源 | https://www.html.cn/web/css/19613.html 今天这篇文章给大家介绍一下CSS清除浮动的几种方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮 ...
- [Web 前端] 018 css 清除浮动的四种方法
清除浮动的四种方法 加 clear: ...(见例1) 父级上增加属性 overflow:hidden(见例2.1) 在最后一个子元素的后面加一个空的 div,给它一个样式属性 clear: both ...
- 活学活用,CSS清除浮动的4种方法
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近. CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受. 1.结尾处加空div标签 ...
- 【CSS】css清除浮动的几种方法
使用了float之后,父级盒子的高度变为0了.我们来写一个例子来看一下,创建一个父级div,并设置border属性,然后下边创建两个子元素span,并设置浮动. 具体代码如下所示: 效果: 由上图可以 ...
- Web前端CSS清除浮动的5种方法
在移动端清除浮动布局,常用的5种方法: 使用清除浮动的类: 使用overflow属性: 使用 flex 布局: 使用grid 布局: 使用 table 布局. 根据实际情况选择适合的方法,需要注意兼容 ...
- css清除浮动的几种方法_web前端学习路线分享CSS浮动-清除浮动篇
web前端学习路线分享CSS浮动-清除浮动篇,为什么要清除浮动 这里所说的清除浮动,并不是不要浮动了,而是清除浮动与浮动之间的影响.那么到底会有什么影响呢? 1.高度塌陷 举个例子我们看一下. 我们在 ...
- css清除浮动的四种方法(详细)
浮动带来的影响 清除浮动主要是为了解决,父元素因为子级元素浮动引起的内部高度为0的问题 看下面一段代码 <div class="fater"><div class ...
最新文章
- NodeJS中的循环陷阱
- 后缀数组 TYVJ P1860 后缀数组
- (7)Xilinx PCIE 接口调试总结(学无止境)
- Flask知识点查阅
- jira api java,如何使用其余api(java)在jira中创建问题?
- 魔方机器人之下位机编程---模拟PWM
- 处女座与cf 模拟
- MOSSE相关滤波算法学习笔记
- 使用Visio 2003画UML类图之使用实现接口图标
- 使用MongoDB Compass将JSON数据文件导入MongDB
- 【MDS多维尺度分析】
- Python实现base64编码文件转化为jpg/png/jpeg/格式图片
- DC NXT TOPO flow (1)SPG flow 基础
- 【课程表小程序源码】增加今日课表功能|开源代码
- LDA: 从头到尾彻底理解LDA (Latent Dirichlet Allocation)
- 前端面试题_2022-02
- 十年磨一剑---看中伊之战有感
- android miui悬浮按钮,MIUI10悬浮球
- 深入剖析ERP实施失败率高成功率低的原因
- 还不错的全民采矿小程序源码+代码已开源