• BFC块级格式化上下文


    一、BFC理解:

    BFC(Block formatting context)块级格式化上下文。我的理解就是他是一个独立的大箱子,箱子内属于自己的一块区域,与外界无关;

    二、如何触发BFC?(满足下列任意一个或多个条件即可)

    • 根元素,即html元素
    • float 的值不为none
    • overflow的值不是visible
    • position的值不是static relative
    • display 的值是inline-block table-cell flex table-caption inline-flex

    三、BFC布局规则

    • 内部的Box会在垂直方向,一个接一个的放置
    • Box垂直方向的距离是由margin决定,属于同一个BFC的相邻的两个Box的margin 会发生重叠
    • BFC 的区域不会与float box重叠
    • BFC 是一个独立的容器,外界的元素不会影响里面的元素,反之也是如此
    • 计算BFC高度时浮动元素也会参与其中

    四、使用场景

    1. 解决margin重叠的问题

        (margin重叠,未使用BFC)

        

        

        (依据 属于同一个BFC的相邻的两个Box的margin 会发生重叠,因此将其改变成两个BFC) 

            

          

      2、清除浮动(父元素没有设置高度,子元素浮动时,父元素高度失效)

        (未清除的情况)

        

        

        (清除后;依据 计算BFC高度时浮动元素也会参与其中 )

          

          

    3、左右两栏布局,右边自适应

         

                 

        (使用BFC;依据 BFC 的区域不会与float box重叠,让右侧单独成为一个BFC )

         

          

       

       

     看了https://blog.csdn.net/sinat_36422236/article/details/88763187这个文章之后自己也操练了一下

      

        

  • 相关阅读:
    洛谷 P1195 口袋的天空
    洛谷 P3144 [USACO16OPEN]关闭农场Closing the Farm_Silver
    Bzoj3277 串
    Bzoj1312 / POJ3155 Neerc2006 Hard Life
    Bzoj2655 calc
    51Nod 1228 序列求和
    洛谷P2901 [USACO08MAR]牛慢跑Cow Jogging
    Bzoj1042 [HAOI2008]硬币购物
    Bzoj3884 上帝与集合的正确用法
    Bzoj4161 Shlw loves matrixI
  • 原文地址:https://www.cnblogs.com/zhangzhixia/p/13784647.html
Copyright © 2020-2023  润新知