浮动----会使当前标签产生上浮效果,从而导致父标签高度塌陷的问题

1. 给父元素指定高度

  <div style="height:200px">

    <div style="float:right"></div>

  </div>

  简单粗暴!高度不定时,如果内部高度大于父级时,容易产生问题

2. 在浮动元素后边添加额外标签

  <div>

     <div style="float:right"></div>
     <div style="clear:both"></div>

  </div>

  其他<p> <br/>标签也可以

  会产生空标签,导致代码混乱,不易维护,且代码的直观感觉很不好

3. 给父标签添加 overflow:hidden;zoom:1 或者 overflow:hidden;width:98% 样式

  <div style="overflow:hidden; zoom:1">

    <div style="float:right"></div>

  </div>

  添加 zoom:1 是为了兼容IE6,zoom 和 width 二者必有一个,但是不能设置height值,浏览器能够自动获取浮动区域高度,

  且不能与position一同使用,因为会引起超出尺寸的隐藏问题。

4. 给父标签设置 overflow:auto

  <div style="overflow:auto; zoom:1">

    <div style="float:right"></div>

  </div>

  与 3 基本相同,只引起的问题是若内部高度高出父级时会出现滚轴

5. 给父元素添加浮动,大家一起变成一个整体的浮动块

  <div style="float:left; zoom:1">

    <div style="float:right"></div>

  </div>

  会引起新的浮动问题

6. 给父标签添加 display:table

  <div style="display:table; zoom:1">

    <div style="float:right"></div>

  </div>

   父级div属性变成表格,可能会引起其他位置问题

7. 给父标签添加绝对定位

  <div style="position:absolute; zoom:1">

    <div style="float:right"></div>

  </div>

  与 5 原理相通,都是将父元素脱离原始文本流,导致的问题也可能相似,可依旧使用该方法予以解决

8. 给父标签定义伪类 :after ,和zoom:1

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

  .clearfix {zoom:1}

  <div class="clearfix">

    <div style="float:right"></div>

  </div>

  IE8以上和非IE浏览器才支持:after,zoom:1可解决浏览器兼容问题

CSS清浮动方法总结的更多相关文章

  1. CSS清除浮动方法集合

    CSS清除浮动方法集合 一.浮动产生原因   -   TOP 一般浮动是什么情况呢?一般是一个盒子里使用了CSS float浮动属性,导致父级对象盒子不能被撑开,这样CSS float浮动就产生了. ...

  2. CSS清浮动处理(Clear与BFC)

    在CSS布局中float属性经常会被用到,但使用float属性后会使其在普通流中脱离父容器,让人很苦恼 1 浮动带来布局的便利,却也带来了新问题 <!doctype html> <h ...

  3. CSS清浮动办法

    骨灰级解决办法: .clear{clear:both;height:0;overflow:hidden;} 上诉办法是在需要清除浮动的地方加个div.clear或者br.clear,我们知道这样能解决 ...

  4. DIV+CSS 清除浮动方法总结

    DIV+CSS 清除浮动是页面布局中常见的问题,相信各位高手也都有自己的方法,今天在这里对常见的几种方法进行总结(PS:谈不上是原创,这里是我自己做的归纳总结,也是我自己内化的过程),希望对您能够有所 ...

  5. CSS清浮动

    × 目录 [1]定义 [2]方法 [3]兼容 前面的话 人们经常谈起清浮动,其实就是解决浮动元素的包含块高度塌陷的问题 定义 clear 清除 值: left | right | both | non ...

  6. css清除浮动方法大全

    清除浮动这个问题,做前端的应该再熟悉不过了,也是每一个web前台设计师 必须掌握的机能. 为什么浮动这么难? 因为浮动会使当前标签产生向上浮的效果,同时会影响到前后标签.父级标签的位置及 width ...

  7. DIV+CSS清除浮动方法

    一.为什么要清除浮动? 1>父元素在未定义高的情况下,由于子元素全部浮动脱离文本流,而造成父元素高的塌陷(正常情况下,父元素的高是由未浮动的子元素撑起来) 2>因为部分子元素的而浮动,脱离 ...

  8. css清浮动与动态计算元素宽度

    css常用清浮动写法 /*清除浮动*/| .clears:after{ display: block; content: ''; clear: both; height: ; visibility: ...

  9. CSS清除浮动方法总结

    什么是CSS清除浮动? 在非IE浏览器(如Firefox)下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高 ...

随机推荐

  1. Eclipse中的常见设置

    本文将移到下面的博客维护: 新的博客网址 当新建一个workspace时,习惯做下面的设置: 1. 在eclipse中,默认的Text file encoding是GBK(操作系统是中文简体):如果操 ...

  2. Linux环境部署安装Maven

    第一步:Maven下载 1. 手动下载 访问官网:http://maven.apache.org/download.cgi 当前最新版本是3.6.0,如果想下载其他版本 可通过点击下图选中项进入历史更 ...

  3. PHP单表操作mysqli数据库类的封装

    class DB{ private $options=array( 'database_type' => 'mysql', 'database_name' => 'test', 'serv ...

  4. 阿里云Centos下安装nginx之后外网无法访问

    centos 7.4 nginx1-14.0编译安装 curl 127.0.0.1 可以请求到 index.html curl local 可以请求到 index.html http://ip/ 无法 ...

  5. Hangfire项目

    什么是Hangfire Hangfire 是一个开源的.NET任务调度框架,目前1.6+版本已支持.NET Core.个人认为它最大特点在于内置提供集成化的控制台,方便后台查看及监控: 另外,Hang ...

  6. Oracle触发器简单使用记录

    在ORACLE系统里,触发器类似函数和过程.1.触发器类型:(一般为:语句级触发器和行级触发器.) 1).DML触发器: 创建在表上,由DML事件引发 2).instead of触发器: 创建在视图上 ...

  7. http请求全过程

    第一步:浏览器生成http请求信息(第五层) 1.分解url 当用户输入网址时,浏览器会以一定的规则分解网址, 以 http://www.cemabenteng.com/dir/index.html ...

  8. js获取字符串字节的位数

    ifSubUser.getBlength = function(str){ ;i--;){ n += str.charCodeAt(i) > ? : ; } return n; }

  9. (转)mysql帮助命令使用说明

    https://www.ilanni.com/?p=8157------- 烂泥:mysql帮助命令使用说明

  10. Respone笔记

    1 设置定时刷新的头 //设置定时刷新的头 response.setHeader("refresh", "5;url=http://www.baidu.com" ...