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 清除浮动的几种方法相关推荐

  1. CSS清除浮动的四种方法

    CSS清除浮动的四种方法 第一种:使用div空标签法 第二种:父元素使用overflow: hidden 第三种:伪元素选择器:after 第四种:伪元素选择器:before + after 第一种: ...

  2. html中清除浮动的几种方式,清除浮动的几种方法-关于CSS清除浮动的几种方法

    CSS清除浮动的3种方法,参考: 方法1: #test{clear:both;} #test为浮动元素的下一个兄弟元素 方法2: #test{display:block;zoom:1;overflow ...

  3. CSS清除浮动的几种方法

    来源 | https://www.html.cn/web/css/19613.html 今天这篇文章给大家介绍一下CSS清除浮动的几种方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮 ...

  4. [Web 前端] 018 css 清除浮动的四种方法

    清除浮动的四种方法 加 clear: ...(见例1) 父级上增加属性 overflow:hidden(见例2.1) 在最后一个子元素的后面加一个空的 div,给它一个样式属性 clear: both ...

  5. 活学活用,CSS清除浮动的4种方法

    清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近. CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受. 1.结尾处加空div标签 ...

  6. 【CSS】css清除浮动的几种方法

    使用了float之后,父级盒子的高度变为0了.我们来写一个例子来看一下,创建一个父级div,并设置border属性,然后下边创建两个子元素span,并设置浮动. 具体代码如下所示: 效果: 由上图可以 ...

  7. Web前端CSS清除浮动的5种方法

    在移动端清除浮动布局,常用的5种方法: 使用清除浮动的类: 使用overflow属性: 使用 flex 布局: 使用grid 布局: 使用 table 布局. 根据实际情况选择适合的方法,需要注意兼容 ...

  8. css清除浮动的几种方法_web前端学习路线分享CSS浮动-清除浮动篇

    web前端学习路线分享CSS浮动-清除浮动篇,为什么要清除浮动 这里所说的清除浮动,并不是不要浮动了,而是清除浮动与浮动之间的影响.那么到底会有什么影响呢? 1.高度塌陷 举个例子我们看一下. 我们在 ...

  9. css清除浮动的四种方法(详细)

    浮动带来的影响 清除浮动主要是为了解决,父元素因为子级元素浮动引起的内部高度为0的问题 看下面一段代码 <div class="fater"><div class ...

最新文章

  1. NodeJS中的循环陷阱
  2. 后缀数组 TYVJ P1860 后缀数组
  3. (7)Xilinx PCIE 接口调试总结(学无止境)
  4. Flask知识点查阅
  5. jira api java,如何使用其余api(java)在jira中创建问题?
  6. 魔方机器人之下位机编程---模拟PWM
  7. 处女座与cf 模拟
  8. MOSSE相关滤波算法学习笔记
  9. 使用Visio 2003画UML类图之使用实现接口图标
  10. 使用MongoDB Compass将JSON数据文件导入MongDB
  11. 【MDS多维尺度分析】
  12. Python实现base64编码文件转化为jpg/png/jpeg/格式图片
  13. DC NXT TOPO flow (1)SPG flow 基础
  14. 【课程表小程序源码】增加今日课表功能|开源代码
  15. LDA: 从头到尾彻底理解LDA (Latent Dirichlet Allocation)
  16. 前端面试题_2022-02
  17. 十年磨一剑---看中伊之战有感
  18. android miui悬浮按钮,MIUI10悬浮球
  19. 深入剖析ERP实施失败率高成功率低的原因
  20. 还不错的全民采矿小程序源码+代码已开源

热门文章

  1. 【P50】JMeter 汇总报告(Summary Report)
  2. Window opener的使用
  3. csp201912-3 化学方程式 100分
  4. 修改浏览器访问Java Web项目时的项目名
  5. QT 热键使用,使用系统API打印
  6. Flutter布局基础:FlexibleExpanded
  7. Visual Studio Code 配置 Python开发环境
  8. Fortify工具下载地址
  9. Fortify中文乱码 Audit Workbench
  10. 西门子S7-300如何接入组态王