CSS清除浮动的3种方法,参考:

方法1:

#test{clear:both;}

#test为浮动元素的下一个兄弟元素

方法2:

#test{display:block;zoom:1;overflow:hidden;}

#test为浮动元素的父元素。zoom:1也可以替换为固定的width或height

方法3:

#test{zoom:1;}

#test:after{display:block;clear:both;visibility:hidden;height:0;content:'';}

#test为浮动元素的父元素

css中清除浮动的方法有哪些

一、使用空标签清除浮动;

二、使用overflow属性

此方法有效地解决了通过空标签元素清除浮动而不得不增加无意代码的弊端。使用该方法是只需在需要清除浮动的元素中定义CSS属性:overflow:auto,即可!”zoom:1″用于兼容IE6。

三、使用after伪对象清楚浮动

此三种方法各有利弊,使用时应择优选择,比较之下第二种方法更为可取。

在HTML5 CSS3中,请简述一下清除浮动的三种方法以及各自的优缺点?

1、使用clear:both清除浮动

在代码中在放一个空的div标签,然后给这个标签设置clear:both来清除浮动对页面的影响。

优点:简单,方便兼容性好

缺点:因为会造成结构混乱,不利于后期维护

建议:一般情况下不建议使用该方法

2、利用伪元素clearfix来清除浮动

给父级元素添加了一个:after伪元素,通过清除伪元素的浮动,达到撑起父元素高度的目的

.clearfix:after{

display:block;

clear:both;

content:"";

visibility:hidden;

height:0;.clearfix{zoom:1;}

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

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

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

建议:推荐使用,建议定义在公共类,以减少css代码

3、父级div定义overflow方法

当给父元素设置了overflow样式,不管是overflow:hidden或overflow:auto都可以清除浮动只要它的值不为visible就可以了。

.parent-container{

/*otherstyle...*/

overflow:hidden;原理:它的本质就是建构了一个BFC,这样使得达到撑起父元素高度的效果。

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

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

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

4、双伪元素方法的使用

通过给父元素设置双伪元素来达到清除浮动的效果,即添加:before和:after伪元素。

.clearfix:before,.clearfix:after{

content:"";

display:block;

clear:both;与方法2相同

html中清除浮动的几种方式,清除浮动的几种方法-关于CSS清除浮动的几种方法相关推荐

  1. 计算机中移动文件几种方式,Mac 教程:OS X「剪切」移动文件的三种方法

    不知你有没有发现,Windows 电脑和 Mac 电脑之间有个明显的差别:在 Mac OS X 上没有直接的「剪切」文件选项.在 Windows 电脑上进行文件操作,用户习惯了剪切.复制和粘贴,但在 ...

  2. python用三种方式定义字符串、并依次输出_Python 字符串格式化输出的3种方式

    原博文 2019-12-28 21:17 − 1. % print ('我叫%s, 身高%scm' % (name,height)) ** 传入的值为元组,依次填充 %s :占位符 str()& ...

  3. u盘启动计算机的几种方式,进入U盘启动模式的启动模式是什么?第一种方法是输入BIO...

    说到该模式,每个人都应该知道,有些朋友在引导时问如何启动U盘安装系统,有些人想问如何进入U盘来启动计算机. 到底是怎么回事?其实如何设置启动U盘启动?下面的编辑器组织了按一下启动键即可进入U盘启动模式 ...

  4. 页面导航的两种方式——声明式导航、编程式导航||vue-router编程式导航||router.push() 方法的参数规则

    页面导航的两种方式 vue-router编程式导航 编程式导航基本用法 <!DOCTYPE html> <html lang="en"><head&g ...

  5. java new class 直接调用_java中创建对象的的两种方式具体解释,一个是new一个是调用Class类的newinstance方法?...

    展开全部 1.new 使用java的关键字new来创建对象实例.构造函数链中的所有构造函数都32313133353236313431303231363533e78988e69d833133333739 ...

  6. java html转pdf的几种方式_java 有关word,excel,pdf转换成html 有几种方式

    展开全部 java将Word/Excel/PDF文件转换成HTML整理 项目开发过程中,需求涉及到了各种文档转换为HTML或者网页易显e68a84323131333532363134313032313 ...

  7. css清除浮动(clearfix)的3种方式

    一.背景 css中使用了float浮动元素,导致页面中某些元素不能正确的显示. 二.浮动引起的后果 (1)由于浮动元素脱离了文档流,所以父元素的高度无法被撑开,影响了与父元素同级的元素. (2)与浮动 ...

  8. 清除浮动的四种方式及其原理

    前言: 什么是浮动,浮动给我们造成了什么困扰,我们该使用什么方式来解决它.下面会介绍到为什么要清除浮动以及清除浮动的四种方式. 目录: 前言: 一.为什么要清除浮动 二.清除浮动的第一种方式---给父 ...

  9. CSS清除浮动大全共8种方法

    清除浮动是每一个 web前台设计师必须掌握的机能.css清除浮动大全,共8种方法. 浮动会使当前标签产生向上浮的效果,同时会影响到前后标签.父级标签的位置及 width height 属性.而且同样的 ...

最新文章

  1. tp5.0 queue 队列操作
  2. python升级和安装pip
  3. 复数的物理意义是什么
  4. 8 9区别 endnote7_SAT和ACT的区别,你知道吗?
  5. ArcGIS Engine 中的多线程使用
  6. mysql 查询多边形_mysql中判断一个点是否在多边形中
  7. centos7.3挂在移动硬盘(亲测)
  8. python去除图片上的文字_Python图像处理之识别图像中的文字(实例讲解)
  9. [react] react中的setState和replaceState的区别是什么?
  10. HBase 完全分布式的安装
  11. 导入和作用域 #596
  12. IP地址中的保留地址
  13. oracle有rtf函数,Delphi中对Oracle存取RTF文档(作者:苏涌)
  14. xmapp老是端口占用
  15. 微信小程序二维码生成器
  16. python appium+夜神模拟器 配置 笔记整理
  17. MyBatis事务管理
  18. 影片剪辑app android,4款经典的手机影片剪辑App
  19. 为什么使用start方法启动Java的Thread线程?
  20. IDEA如何设置自己喜欢的背景图(超好看的哟)

热门文章

  1. 全模型建筑渲染表现:有三只眼睛的房子
  2. banner 获取当前指示物_Android轮播图图片的本地保存及读取
  3. java-php-python-ssm智慧后勤系统计算机毕业设计
  4. 【贪心】电视节目安排
  5. 高频宽带功率放大器(频率:10KHZ-500KHZ 功率:400W-800W)
  6. TV Show Game
  7. 【随机共振】基于随机共振的高灵敏度GPS信号捕获算法
  8. 又一“交通大学”,要来了?
  9. 基于YOLO模型的安全帽佩戴检测
  10. 没有播放器软件,直接使用网页播放本地视频