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


    title: css 清除浮动
    date: 2020-03-10 17:03:10
    tags: css


    清除浮动

    • 浮动float最开始出现的意义是为了让文字环绕图片而已,后来用于让块级元素并排展示

      float 会导致该浮动元素的块级元素的父元素高度塌陷,所以需要清除浮动

    • 清除浮动是指清除由于子元素浮动带来父元素高度塌陷的影响。

    清除浮动的方法

    1. 在浮动元素同级最后增加一个冗余元素为其设置 clear:both

      clear的取值可以是:left、right、both

      • 清除左边浮动
      • 清除右边浮动
      • 左右浮动都不要
      .clear{clear:both; height: 0; line-height: 0; font-size: 0}
      
    2. 给父元素增加

      overflow: hidden;
      // 或者设置overflow: auto;只要overflow不为visible即可
      zoom: 1;	//解决浏览器兼容问题
      
    3. :after 方法

      .outer {
          zoom:1;
      }    /*==for IE6/7 Maxthon2==*/
      .outer :after {
          clear:both;
          content:'';
          display:table;
           0;
          height: 0;
          visibility:hidden;
      }
      

    块格式化上下文(BFC)

    • 块级格式化上下文是CSS可视化渲染的一部分。它是一块区域,规定了内部块盒的渲染方式,以及浮动相互之间的影响关系。
      • BFC是就像一道屏障,隔离出了BFC内部和外部,内部和外部区域的渲染相互之间不影响。BFC有自己的一套内部子元素渲染的规则,不影响外部渲染,也不受外部渲染影响。
      • BFC的区域不会和外部浮动盒子的外边距区域发生叠加。也就是说,外部任何浮动元素区域和BFC区域是泾渭分明的,不可能重叠。
      • BFC在计算高度的时候,内部浮动元素的高度也要计算在内。也就是说,即使BFC区域内只有一个浮动元素,BFC的高度也不会发生塌缩,高度是大于等于浮动元素的高度的。
      • HTML结构中,当构建BFC区域的元素紧接着一个浮动盒子时,即,是该浮动盒子的兄弟节点,BFC区域会首先尝试在浮动盒子的旁边渲染,但若宽度不够,就在浮动元素的下方渲染
  • 相关阅读:
    Mysql源代码分析系列(2): 源代码结构转载
    Python 元组、列表、字典、文件
    Mysql源代码分析系列(1): 编译和调试转载
    ETL测试参考文档
    MySql select into与set的区别
    STL container
    mysqlclient5.0.2614 RPM for ppc
    linux多线程的总结(pthread用法)
    给线程变量pthread_t *thread动态分配空间
    当SQL数据库日志文件已满,或者日志很大,怎么办
  • 原文地址:https://www.cnblogs.com/serahuli/p/12516610.html
Copyright © 2011-2022 走看看