BFC(块级格式化上下文)详解

1.什么是BFC

BFC 全称为 块格式化上下文 (Block Formatting Context) 。

2.BFC有啥作用

1.使 BFC 内部浮动元素只在内部发挥作用,不会不会影响到外部
2.解决边距重叠问题(同时能清除浮动)

3.BFC的原理(BFC的渲染规则)

1.BFC元素垂直方向的边距会发生重叠
2.BFC的区域不会与浮动元素的box重叠,可以包含浮动元素(用来清除浮动)
3.BFC在页面上是一个独立的元素,里面与外面的元素相互不影响
4.计算BFC的高度,浮动元素也会参与计算

4.如何创建BFC

1.float不为null
2.position不为static/relative
3.display的值为table-cell,table-caption,or inline-block中的任何一个
4.overflow值不为visible

5.代码上手
<!-- BFC垂直方向边距重叠 -->
      <section id="margin">
        <style>
          #margin{
            background: pink;
            overflow: hidden;
          }
          #margin>p{
            margin: 5px auto 25px;
            background: red;
          }
        </style>
        <p>1</p>
        <div style="overflow:hidden">
          <p>2</p>
        </div>
        <p>3</p>
      </section>
      
<!-- BFC不与float重叠 -->
      <section id="layout">
        <style media="screen">
          #layout{
            background: red;
          }
          #layout .left{
            float: left;
            width: 100px;
            height: 100px;
            background: pink;
          }
          #layout .right{
            height: 110px;
            background: #ccc;
            overflow: auto;
          }
        </style>
        <div class="left"></div>
        <div class="right"></div>
      </section>

<!-- BFC子元素即使是float也会参与计算 -->
      <section id="float">
        <style media="screen">
          #float{
            background: red;
            overflow: auto;
            /*float: left;*/
          }
          #float .float{
            float: left;
            font-size: 30px;
          }
        </style>
        <div class="float">我是浮动元素</div>
      </section>





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值