zoukankan      html  css  js  c++  java
  • CSS之BFC

    BFC(Block Formatting Context,块格式上下文)

    具有BFC特性的元素能够看作是隔离了的独立容器,容器里面的元素不会在布局上影响到外面的元素。

    在CSS3中。BFC叫做Flow Root。

    在CSS2.1中。有三种定位方案——普通流(Normal Flow),浮动(Float)和绝对定位(Absolute Positioning)。


    (1)怎样触发BFC?

       下列情况将创建一个BFC环境:

    (a)浮动(元素的float非none)

    (b)绝对定位元素(元素的position为absolute或fixed)

    (c)display为inline-block, table-cell, table-caption, flex, inline-flex

    (d)overflow非visible(为hidden,auto,scroll)


    (2)BFC有什么特性?

    (a)BFC会阻止竖直margin的折叠

              假设两个块级元素相邻且在同一个BFC环境时,它们竖直方向之间的margin(margin-bottom与margin-top)会发生折叠(塌陷)。

    而假设它们不在同一个BFC下。则不会折叠。

    (b)BFC能够”包容“浮动元素

              BFC会依据子元素的情况自己主动调整高度。即使其子元素中包括浮动元素

    (c)BFC能够阻止元素被浮动元素覆盖



  • 相关阅读:
    [HAOI2009] 毛毛虫
    [NOI2015]品酒大会
    SDOI2016 生成魔咒
    [POJ2406]字符串的幂
    [SPOJ705]不同的子串
    快速幂和矩阵快速幂
    对于最近的一些日常总结by520(17.10.18)
    思维训练
    趣味性的高智商(贼有意思)的题(坑)
    C++手动开O2优化
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6784589.html
Copyright © 2011-2022 走看看