码迷,mamicode.com
首页 > Web开发 > 详细

css 清除浮动

时间:2015-12-08 18:19:00      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

清除浮动主要说三种方法。

第一种:clear:both

<style>
    .clear{
        clear:both;
    }
    .f-left{
        float:left;
    }
</style>

<div class="outer">
    <div class="div1 f-left">1</div>
    <div class="div2 f-left">2</div>
    <div class="div3 f-left">3</div>
    <div class="clear"></div>
</div>

对于第一种方法:

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

  缺点:要增加很多空的div

第二种:父级元素添加overflow:hidden

<style>
    .over-flow{
        overflow:hidden;
    }
</style>

<div class="outer over-flow"> //这里添加了一个class
    <div class="div1 f-left">1</div>
    <div class="div2 f-left">2</div>
    <div class="div3 f-left">3</div>
</div>

第三种:after伪类

<style>
.clearfix:after {
  content: ‘.‘;
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}
.clearfix {
  zoom: 1; /*主要兼容IE*/
}
</style>

<div class="div1 clearfix"> 
     <div class="left">Left</div> 
      <div class="right">Right</div> 
</div>

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

 

css 清除浮动

标签:

原文地址:http://www.cnblogs.com/peiyuanming/p/5029461.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!