zoukankan      html  css  js  c++  java
  • css清除浮动的几种方法

    先看看为什么要清除浮动:

    现有html结构如下:

    <div class="content">
      <div class="div div1"></div>
      <div class="div div2"></div>
      <div class="div div3"></div>
    </div>

    css:

    .content{
        border: 1px solid #ccc;
        background: #fc9;
        color: #fff;
        margin: 50px auto;
        padding: 50px;
    }
    .div{
        float:left;
        width: 100px;
        height:100px;
    }
    .div1{
        background-color: #ffccf7;
    }
    .div2{
        background-color: #b1fffc;
    }
    .div3{
        background-color: #fffab1;
    }

    发现,里面的块元素并没有把父元素撑开。这显然不是我们想要的结果,因此,我们需要清除浮动。

    1.加入新的元素:

    <div class="content">
      <div class="div div1"></div>
      <div class="div div2"></div>
      <div class="div div3"></div>
      <div class="clear"></div>
    </div>
    .clear{
        clear:both;
    }

    但显然,我们还有更好的方法来代替这一新元素:after伪类:

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

    要注意,width,height值必须设置为0,否则content会变宽||高;display设置为block是为了在FF/chrome/opera/IE8下也起作用;visibility则是让浏览器渲染,但不显示。

    2.设置父元素overflow

    也可以通过设置父元素overflow设置为auto或hidden来达到效果,但使用visible值达不到效果。

  • 相关阅读:
    dpkg 删除 百度网盘 程序
    ubuntu 安装go
    解决 swap file “*.swp”already exists!问题
    ROS Topic 常用指令
    正交概念
    vim 永久显示行号 & 临时显示行号
    awk、grep、sed
    Keil中使用Astyel进行C语言的格式化
    红黑树学习
    802.11 对于multicast 和 broadcast的处理
  • 原文地址:https://www.cnblogs.com/liuhanz/p/4810922.html
Copyright © 2011-2022 走看看