zoukankan      html  css  js  c++  java
  • 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这个文章之后自己也操练了一下

      

        

  • 相关阅读:
    浅谈移动端设备标识码:DeviceID、IMEI、IDFA、UDID和UUID
    Linux下的crontab定时执行任务命令详解
    SHOW INDEX查询MySQL表索引
    Vue非父子组件传值方式。
    windows 双网卡 内外网上网配置说明
    战神引擎部署备注说明
    k8s service直接暴露外部访问配置
    Kubernetes 五种资源控制器详细介绍以及功能演示(转)
    docker网络
    在Linux服务器,一键搭建K8s服务【脚本篇】(转)
  • 原文地址:https://www.cnblogs.com/zhangzhixia/p/13784647.html
Copyright © 2011-2022 走看看