从例子来看BFC

作者: cce117b0a0ce | 来源:发表于2018-08-27 17:21 被阅读4次

BFC

首先BFC的英文全称Block Format Context,也就是块级格式化上下文。

BFC特性

首先,我们大家都知道的BFC特性:

  1. 内部的元素会在垂直方向,从顶部一个接一个的放置
  2. Box垂直方向的距离由margin决定,属于同一个BFC的两个相邻Box的margin会发生重叠。
  3. 每个元素的margin box的左边,与容器块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此;
  4. BFC的区域不会与float box重叠。
  5. BFC就是页面一个独立的容器,容器里面的元素不会影响到外面的元素,反之亦然。
  6. 计算BFC的高度时,浮动元素也会参与计算

创建BFC方法

下面也是大家都熟悉的创建BFC的方法

  1. 根元素
  2. float不为none
  3. overflow不为visible
  4. display为table-cell,table-caption,inline-block,flex,inline-flex,flow-root其中最后一个为专门创建BFC的属性
  5. position为absolute,fixed

实例

实例1

从实例1可以看到特性1,内部元素会从顶部一个接一个的放置,并且属于同一个BFC的两个相邻的margin会发生重叠。如何解决边距重叠的问题呢?此时我们需要给元素套上一个父元素,将父元素变成BFC。

实例

这样便可以解决边距重叠问题。

实例2

从实例2上可以看到,元素的外边距会触碰到包含块容器的外边框,也就是元素左边与容器左边相接触,与浮动元素发生了重叠。

当右面元素触发BFC的时候,不会与左面元素发生重叠,见实例

实例3

当两个子元素都进行浮动时,此时父元素的高度会消失,第六个特性,计算BFC的高度时,浮动元素也会参与计算,此时我们触发父元素的BFC。实例

此时发现高度会重新被撑开,所以计算BFC的高度浮动元素也会参与计算

相关文章

  • 从例子来看BFC

    BFC 首先BFC的英文全称Block Format Context,也就是块级格式化上下文。 BFC特性 首先,...

  • 通过例子讲解BFC

    BFC的基本概念 块格式化上下文(Block Formatting Context,BFC) 是Web页面的可视化...

  • BFC

    原文:[布局概念] 关于CSS-BFC深入理解 面试的时候尽量不讲定义,而是讲例子。 定义 BFC全称叫做(Blo...

  • css拾遗(13)-float布局案例

    用float布局实现这样一个小例子: 基本结构 效果是这样的: BFC 白色区域无法包裹住列表项是BFC的问题,在...

  • CSS 什么是BFC?

    一、BFC没有明确的定义 我们首先来看 MDN 对 BFC 的描述 块格式化上下文(Block Formattin...

  • 面试题

    1.Bfc 1、BFC是一个独立的布局环境,BFC内部的元素布局与外部互不影响;2、可以通过一些条件触发BFC,从...

  • BFC 块级格式化上下文

    BFC(block formatting context)一种布局方式 特性 BFC内部的Box会在垂直方向,从顶...

  • BFC及其应用

    前言 本文包括以下内容: 什么是BFC 如何产生BFC BFC的特点 应用BFC 1、什么是BFC BFC (Bl...

  • CSS中的BFC

    个人理解 1、BFC是一个独立的布局环境,BFC内部的元素布局与外部互不影响; 2、可以通过一些条件触发BFC,从...

  • 一文搞懂CSS中的BFC是什么?

    个人理解 1、BFC是一个独立的布局环境,BFC内部的元素布局与外部互不影响; 2、可以通过一些条件触发BFC,从...

网友评论

    本文标题:从例子来看BFC

    本文链接:https://www.haomeiwen.com/subject/deetwftx.html