zoukankan      html  css  js  c++  java
  • 清除浮动 .clearfix

    什么是.clearfix

    CSS 代码 复制

    .clearfix:after {
    content: " ";
    display: block;
    clear: both;
    height: 0;
    }
    .clearfix {
    zoom: 1;
    }

    <div class="clearfix">
    <div class="floated"></div>
    </div>


    上述代码说明:

    CSS 代码 复制

    .clearfix:after {
    content: "."; /*内容为“.”就是一个英文的句号而已。也可以不写。*/
    display: block; /*加入的这个元素转换为块级元素。*/
    clear: both; /*清除左右两边浮动。*/
    visibility: hidden; /*可见度设为隐藏。注意它和display:none;是有区别的。visibility:hidden;仍然占据空间,只是看不到而已;*/
    line-height: 0; /*行高为0;*/
    height: 0; /*高度为0;*/
    font-size:0; /*字体大小为0;*/
    }

    .clearfix { *zoom:1;} /*这是针对于IE6的,因为IE6不支持:after伪类,这个神奇的zoom:1让IE6的元素可以清除浮动来包裹内部元素。*/


    上面的代码就是.clearfix的定义和应用,简单的说下.clearfix的原理:

    1、在IE6, 7下zoom: 1会触发hasLayout,从而使元素闭合内部的浮动。
    2、在标准浏览器下,.clearfix:after这个伪类会在应用到.clearfix的元素后面插入一个clear: both的块级元素,从而达到清除浮动的作用。
    3、在需要清除浮动的时候,只要写一个.clearfix就行了,然后在需要清浮动的元素中 添加clearfix类名就好了。

    实例:

    HTML 代码 复制


    <html >
    <head>
    <title> css用clearfix清除浮动实例</title>
    <meta name="generator" content="editplus" />
    <meta name="author" content="" />
    <meta name="keywords" content="" />
    <meta name="description" content="" />
    </head>
    <body>
    <style type="text/css">
    /*所有主流浏览器都支持 :after 伪元素。*/
    .clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden}
    .clearfix{*+height:1%;}/*不知道有什么用处,不加ie7也没有问题*/
    .box{ background:#111;500px; position:relative;}
    .l{float:left; background:#333;200px; height:100px;}
    .r{float:right;background:#666;200px; height:200px;}
    .s{100px; height:100px;background:#999;position:absolute;right:-50px;;}
    </style>
    <div class="box clearfix">
    <div class="l">left</div>
    <div class="r">right</div>
    <div class="s">absolute</div>
    </div>
    </body>
    </html>

    原内容来自: http://www.studyofnet.com/news/196.html

  • 相关阅读:
    20170421 F110 常见问题
    BAPI_ACC_DOCUMENT_POST 解决原因代码输入问题-利用BADI
    ABAP f4帮助输入多个值
    002 MIRO发票校验采购订单项目科目分配类别检查增强-20150819
    001infor record 计划时间取值增强-20150622
    003 F-47创建预付定金请求检查增强-20150819.docx
    整理开源协议问题 GPL APACHE
    拆我的跨界手环
    ThinkPHP 的一个神秘版本 ThinkPHP 1.2
    关于 Vue 方法前面的美元符号
  • 原文地址:https://www.cnblogs.com/yudishow/p/4763337.html
Copyright © 2011-2022 走看看