广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >html+css怎么清除浮动
  • 243
分享到

html+css怎么清除浮动

2024-04-02 19:04:59 243人浏览 独家记忆
摘要

本篇内容介绍了“html+CSS怎么清除浮动”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!浮动会使当前标签

本篇内容介绍了“html+CSS怎么清除浮动”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

浮动会使当前标签产生向上浮的效果,同时会影响到前后标签、父级标签的位置及 width height 属性。而且同样的代码,在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了。解决浮动引起的问题有多种方法,但有些方法在浏览器兼容性方面还有问题。

下面总结8种清除浮动的方法(测试已通过 ie chrome firefox opera,后面三种方法只做了解就可以了):

1,父级div定义 height 

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">       

  2. .div1{background:#000080;border:1px solid red;height:200px;}       

  3. .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px}       

  4. .left{float:left;width:20%;height:200px;background:#DDD}       

  5. .right{float:right;width:30%;height:80px;background:#DDD}       

  6. </style>       

  7. <div class="div1">       

  8. <div class="left">Left</div>       

  9. <div class="right">Right</div>       

  10. </div>       

  11. <div class="div2">       

  12. div2       

  13. </div>    

原理:父级div手动定义height,就解决了父级div无法自动获取到高度的问题。

优点:简单、代码少、容易掌握

缺点:只适合高度固定的布局,要给出精确的高度,如果高度和父级div不一样时,会产生问题

建议:不推荐使用,只建议高度固定的布局时使用

----------

2,结尾处加空div标签 clear:both

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red}    

  3. .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6.     

  7. .clearfloat{clear:both}    

  8. </style>    

  9. <div class="div1">    

  10. <div class="left">Left</div>    

  11. <div class="right">Right</div>    

  12. <div class="clearfloat"></div>    

  13. </div>    

  14. <div class="div2">    

  15. div2    

  16. </div>   

原理:添加一个空div,利用css提高的clear:both清除浮动,让父级div能自动获取到高度

优点:简单、代码少、浏览器支持好、不容易出现怪问题

缺点:不少初学者不理解原理;如果页面浮动布局多,就要增加很多空div,让人感觉很不好

建议:不推荐使用,但此方法是以前主要使用的一种清除浮动方法

----------

3,父级div定义 伪类:after 和 zoom (大多是用这种)

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red;}    

  3. .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6.     

  7. .clearfloat:after{display:block;clear:both;content:"";visibility:hidden;height:0}    

  8. .clearfloat{zoom:1}    

  9. </style>    

  10. <div class="div1 clearfloat">    

  11. <div class="left">Left</div>    

  12. <div class="right">Right</div>    

  13. </div>    

  14. <div class="div2">    

  15. div2    

  16. </div>   

原理:IE8以上和非IE浏览器才支持:after,原理和方法2有点类似,zoom(IE转有属性)可解决ie6,ie7浮动问题

优点:浏览器支持好、不容易出现怪问题(目前:大型网站都有使用,如:腾迅,网易,新浪等等)

缺点:代码多、不少初学者不理解原理,要两句代码结合使用才能让主流浏览器都支持。

建议:推荐使用,建议定义公共类,以减少CSS代码。
-------

4,父级div定义 overflow:hidden

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red;width:98%;overflow:hidden}    

  3. .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px;width:98%}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6. </style>    

  7. <div class="div1">    

  8. <div class="left">Left</div>    

  9. <div class="right">Right</div>    

  10. </div>    

  11. <div class="div2">    

  12. div2    

  13. </div>   

原理:必须定义width或zoom:1,同时不能定义height,使用overflow:hidden时,浏览器会自动检查浮动区域的高度

优点:简单、代码少、浏览器支持好

缺点:不能和position配合使用,因为超出的尺寸的会被隐藏。

建议:只推荐没有使用position或对overflow:hidden理解比较深的朋友使用。

---------

5,父级div定义 overflow:auto

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red;width:98%;overflow:auto}    

  3. .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px;width:98%}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6. </style>    

  7. <div class="div1">    

  8. <div class="left">Left</div>    

  9. <div class="right">Right</div>    

  10. </div>    

  11. <div class="div2">    

  12. div2    

  13. </div>   

 原理:必须定义width或zoom:1,同时不能定义height,使用overflow:auto时,浏览器会自动检查浮动区域的高度

优点:简单、代码少、浏览器支持好

缺点:内部宽高超过父级div时,会出现滚动条。

建议:不推荐使用,如果你需要出现滚动条或者确保你的代码不会出现滚动条就使用吧。

---------

6,父级div 也一起浮动

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red;width:98%;margin-bottom:10px;float:left}    

  3. .div2{background:#800080;border:1px solid red;height:100px;width:98%;clear:both}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6. </style>    

  7. <div class="div1">    

  8. <div class="left">Left</div>    

  9. <div class="right">Right</div>    

  10. </div>    

  11. <div class="div2">    

  12. div2    

  13. </div>   

原理:所有代码一起浮动,就变成了一个整体

优点:没有优点

缺点:会产生新的浮动问题。

建议:不推荐使用,只作了解。

-------

7,父级div定义 display:table

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red;width:98%;display:table;margin-bottom:10px;}    

  3. .div2{background:#800080;border:1px solid red;height:100px;width:98%;}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6. </style>    

  7. <div class="div1">    

  8. <div class="left">Left</div>    

  9. <div class="right">Right</div>    

  10. </div>    

  11. <div class="div2">    

  12. div2    

  13. </div>  

原理:将div属性变成表格

优点:没有优点

缺点:会产生新的未知问题。

建议:不推荐使用,只作了解。
---------

8,结尾处加 br标签 clear:both

XML/HTML Code复制内容到剪贴板

  1. <style type="text/css">    

  2. .div1{background:#000080;border:1px solid red;margin-bottom:10px;zoom:1}    

  3. .div2{background:#800080;border:1px solid red;height:100px}    

  4. .left{float:left;width:20%;height:200px;background:#DDD}    

  5. .right{float:right;width:30%;height:80px;background:#DDD}    

  6. .clearfloat{clear:both}    

  7. </style>    

  8. <div class="div1">    

  9. <div class="left">Left</div>    

  10. <div class="right">Right</div>    

  11. <br class="clearfloat" />    

  12. </div>    

  13. <div class="div2">    

  14. div2    

  15. </div>   

原理:父级div定义zoom:1来解决IE浮动问题,结尾处加 br标签 clear:both

建议:不推荐使用,只作了解。

“html+css怎么清除浮动”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: html+css怎么清除浮动

本文链接: https://www.lsjlt.com/news/77979.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • html+css怎么清除浮动
    本篇内容介绍了“html+css怎么清除浮动”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!浮动会使当前标签...
    99+
    2022-10-19
  • css怎么清除浮动
    今天小编给大家分享一下css怎么清除浮动的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。 ...
    99+
    2022-10-19
  • css中怎么清除浮动
    这篇文章给大家介绍css中怎么清除浮动,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、【.clr{clear:both;}】,设置了clear属性的元素,其上边框会紧贴着浮动元素的m...
    99+
    2022-10-19
  • CSS怎么清除浮动行
    这篇文章主要介绍“CSS怎么清除浮动行”,在日常操作中,相信很多人在CSS怎么清除浮动行问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么清除浮动行”的疑惑有所帮助!接...
    99+
    2022-10-19
  • css要怎么清除浮动
    这篇文章给大家分享的是有关css要怎么清除浮动的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 css清除浮动的方法:1、浮动代码后添加一个设置了“cl...
    99+
    2022-10-19
  • CSS怎么清除浮动布局
    这篇文章主要介绍“CSS怎么清除浮动布局”,在日常操作中,相信很多人在CSS怎么清除浮动布局问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么清除浮动布局”的疑惑有所帮...
    99+
    2022-10-19
  • 使用css怎么清除浮动
    这期内容当中小编将会给大家带来有关使用css怎么清除浮动,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。本文的框架图如下:一、浮动到底是什么?W3school中给出的浮动定义为浮动的框可以向左或向右移动,直...
    99+
    2023-06-08
  • Css怎么实现清除浮动
    小编给大家分享一下Css怎么实现清除浮动,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!清除浮动影响的几种方法: 给父级元素设置高度效果图:代码: <style>   &n...
    99+
    2023-06-08
  • CSS浮动和清除浮动:掌握浮动和清除浮动的技巧
    CSS浮动和清除浮动:掌握浮动和清除浮动的技巧,需要具体代码示例在网页设计和开发中,CSS浮动(float)是常见的布局技术之一。使用浮动可以将元素向左或者向右移动,从而实现元素在页面中的位置调整和排列。然而,浮动元素也会给页面造成一些问题...
    99+
    2023-11-18
    CSS 浮动 清除浮动
  • CSS怎么实现元素浮动和清除浮动
    这篇文章主要介绍CSS怎么实现元素浮动和清除浮动,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!浮动基本介绍在标准文档流中元素分为2种,块级元素和行内元素,如果想让一些元素既要有块级元素的特点也同时保留行内元素特点,只...
    99+
    2023-06-08
  • css怎么利用:after清除浮动
    这篇文章主要介绍css怎么利用:after清除浮动,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!css的三种引入方式1.行内样式,最直接最简单的一种,直接对HTML标签使用style=""。2.内...
    99+
    2023-06-14
  • css清除浮动语法怎么写
    这篇文章给大家分享的是有关css清除浮动语法怎么写的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。清除浮动.clearfix:after{ content: '', h...
    99+
    2023-06-19
  • css浮动如何清除
    这篇文章主要介绍“css浮动如何清除”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“css浮动如何清除”文章能帮助大家解决问题。1、【.clr{clear:both;}】,设置了clear属性的元素,...
    99+
    2023-07-04
  • CSS如何清除浮动
    这篇文章主要为大家展示了“CSS如何清除浮动”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“CSS如何清除浮动”这篇文章吧。CSS清除浮动方法集合一、浮动产生原因...
    99+
    2022-10-19
  • 如何清除css浮动
    这篇文章主要介绍如何清除css浮动,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一,我们为什么要浮动为什么浮动,为什么要清除浮动,以及清除浮动的方法。在网页布局的时候有时需要元素并排...
    99+
    2022-10-19
  • 怎样在CSS中清除浮动
    怎样在CSS中清除浮动?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、父级div定义伪类:after和zoom<style type="text/c...
    99+
    2023-06-08
  • CSS的clear:both清除浮动怎么运用
    这篇文章主要介绍了CSS的clear:both清除浮动怎么运用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS的clear:both清除浮动怎么运用文章都会有所收获,下面我...
    99+
    2022-10-19
  • CSS中怎么使用clearfix清除浮动
    这篇文章主要介绍“CSS中怎么使用clearfix清除浮动”,在日常操作中,相信很多人在CSS中怎么使用clearfix清除浮动问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2022-10-19
  • css如何清除浮动float
    这篇文章主要介绍了css如何清除浮动float,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在清除浮动前我们要了解两个重要的定义:浮动的定义...
    99+
    2022-10-19
  • CSS清除浮动的方法
    本篇内容介绍了“CSS清除浮动的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!CSS清除浮动的另一种别...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作