BFC

CSS中的BFC详细讲解(易懂) 一个BFC区域只包含它的子元素,不包含其子元素的子元素。成为一个BFC区域要满足一定的条件。不同的BFC区域相互独立,互补影响。BFC是属于普通流的,我们可以把BFC看成页面的一块渲染区,他有自己的渲染规则,简单来说就是BFC可以看做元素的属性,当元素有了BFC这个属性,这个元素可以看做隔离了的容器,容器里面的元素不会在布局上影响到外面的元素。 阅读详情
1.BFC是什么

BFC是块级格式化上下文:
1.BFC规定了元素如何对内容进行定位,以及和其他元素的关系和相互作用
2.BFC提供了一个环境,这个环境中按照一定规则进行布局不会影响其他环境中的布局

2.形成BFC的条件(符合一个就可)

1.float值不是none
2.overflow值不是visible
3.position值是absolute或fixed
4.display值是inline-block, table-cell, table-caption, flex, inline-flex

3.BFC的约束条件

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

4. BFC的三个特性,作用

1.BFC会阻止垂直外边距(margin-top、margin-bottom)折叠
2.BFC不会重叠浮动元素
3.BFC可以包含浮动

5.实例

1.BFC会阻止垂直外边距(margin-top、margin-bottom)折叠

#outer {
    background-color: #FF8686;
    width: 100%;
    margin-top: 50px;
}
#outer #inner {
    width: 100px;
    height: 100px;
    margin-top: 50px;
    background-color: #AFD9FD;
}

效果:
这里写图片描述
父元素触发BFC

#outer {
    overflow: hidden;
    background-color: #FF8686;
    width: 100%;
    margin-top: 50px;
}
#outer #inner {
    width: 100px;
    height: 100px;
    margin-top: 50px;
    background-color: #AFD9FD;
}

效果:
这里写图片描述
2.BFC不会重叠浮动元素
3.BFC可以包含浮动

<!doctype>
<html>
    <head>
        <meta charset="utf-8">
    </head>

    <body>
        <div id="main">
            <div id="head">
                this is header,height is 100px
            </div>

            <div id="content">
                <div id="contentLeft">
                    this is left content
                </div>
                <div id="contentRight">
                    this is right content
                </div>
            </div>

            <div id="foot">
                this is footer,height is 100px
                此布局footer自适应,当主文本区或侧边栏不满一页时,footer位于屏幕下端。
                如果主文本区和侧边栏高度超过一页时,footer将在两者之中height最大元素的下方可手动调节侧边栏和主文本区高度查看效果
            </div>

        </div>

        <style type="text/css">
            /*其他样式代码*/
            *{
                margin: 0px;
                font-size: 25px;
                color: white;
                font-family: SimHei;
                text-align: center;
            }
            #head,
            #foot{
                background-color: #7E7E7E;
            }
            #content #contentLeft{
                background-color: #FF8686;
            }
            #content #contentRight{
                background-color: #AFD9FD;
            }

            /**
             * 布局核心代码
             */

            /*实现内容不足一页时,foot固定在底部*/
            /*首先需要设定html的高度为一个页面以方便将一个div(g-ctn)设定为最小大小为浏览器窗口大小*/
             html,body{
                 height: 100%;
             }
             #main{
                 min-height: 100%;
                 position: relative;
             }
             #foot{
                 position: absolute;
                 bottom: 0px;
                 width: 100%;
             }

            #head,
            #foot{
                height: 100px;
            }
            #content{
                /*BFC规则5:计算BFC的高度时,浮动子元素也参与计算,则触发BFC,让浮动元素参与计算/
                /*实现左边内容较高时,content可以计算到长度,让底部自适应*/
                overflow: hidden;
            }
            #content #contentLeft{
                float: left;
                width: 300px;
                height: 500px;
            }
            #content #contentRight{
                height: 600px;
                /*添加原因:BFC规则3:每个元素的margin box的左边, 与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
                 * 则虽然存在浮动的元素contentLeft,但contentRight的左边依然会与包含块的左边相接触。
                 * 方法:BFC规则4:需要overflow: hidden,触发contentRight生成BFC
                 * 结果:BFC的区域不会与float的元素区域重叠*/
                overflow: hidden;
            }

        </style>
    </body>
</html>

实例见
https://github.com/wanghuanweb/wanghuan.github.io/blob/master/css/css%E5%B8%83%E5%B1%80/%E4%B8%A4%E6%A0%8F%E5%BA%95%E9%83%A8%E8%87%AA%E9%80%82%E5%BA%94%E5%B8%83%E5%B1%80.html

自动驾驶——最优控制算法(LQR)工程化总结 到近段时间,真正在我们的控制器上运行最优控制算法(LQR),一步一个脚印,从开始只是知道其“控制理论”的阶段、再到对着一堆网上的资料和公式一筹莫展不知何着手、再到初步实现了LQR算法的开发(但是使用的扭矩环控制,控制的不好,而且由于各种原因被delay,迟迟无法落地),直到大上个星期,泊车平台有此LQR开发需求,又重新了开始了算法的研发,用时一个周时间完成了算法开发,然后再用一个周时间进行实车最优控制算法验证与调试,取得了很大的进展,由于执行器是转角控制的,这无疑少了很多的工作量。 阅读详情

相关推荐

SCL3400硬件避坑指南:引脚兼容性测试+模式切换异常处理

本文针对村田SCL3400双轴倾角计在实际硬件设计中的常见问题,提供了详细的避坑指南。重点解析了从SCL3300迁移时的引脚兼容性真相,包括SPI时序、电源去耦等关键差异,并深入探讨了模式切换中超量程错误的复现原因与软件容错方案。同时,指导了如何根据应用场景配置低通滤波器,并给出了无自动唤醒功能下的可靠电源与长线SPI通信管理策略。

weixin_29190573的博客 292

BFC 到底是个啥?有何神通广大之处?这篇文章带你进入 BFC 的世界

在实际开发过程中其实我们不经意间就用到了BFC这一利器解决了我们的问题,一起学习如何使用BFC实现我们想要的效果吧!

qq_35727582的博客 4432

ST7789T3与CST816D驱动全解析,面试技巧第11篇:嵌入式面试场景问答 10 连发。

SPI模式下,SCLK、MOSI、CS、DC、RST为必需引脚;8080模式下需连接D0-D7、WR、RD等信号线。CST816D触摸芯片通常通过I2C接口通信,需连接SCL、SDA及INT(中断)引脚。确保电源引脚(VCC、GND)稳定供电,ST7789T3典型工作电压为3.3V。显示异常时检查时序参数,如SPI时钟频率(建议≤40MHz)、数据建立时间。初始化流程需发送一系列命令序列,包括设置像素格式、扫描方向、帧率控制等。扫描方向(MADCTL)可调整显示旋转角度,需根据实际硬件布局配置。

a967gsvj的博客 375

什么是BFC,他有什么用?

BFC 是什么?

sqLeiQ的博客 3万+

深入解析ST MC SDK(WorkBench)工程结构:从零搭建FOC电机控制项目

本文深入解析了ST MC SDK(WorkBench)工程结构,详细介绍了如何从零搭建FOC电机控制项目。通过ST MC SDK和WorkBench工具链,开发者可以快速配置电机类型、控制策略等参数,生成完整的FOC控制工程。文章还拆解了工程结构中的核心控制模块、HAL硬件抽象层、芯片系统初始化和电机控制算法库,并提供了无传感器FOC实战技巧和常见问题排查指南,帮助开发者高效掌握STM32F407ZGT6开发板上的FOC电机控制技术。

weixin_29173777的博客 412

深入解析PCIe Retimer:工作原理与典型应用场景

本文深入解析了PCIe Retimer的工作原理与核心价值。作为高速信号的中继再生器,Retimer通过时钟数据恢复和信号再生技术,有效解决长距离或复杂通道中的信号衰减与完整性问题,从而极大地扩展了PCIe链路的有效传输距离。文章详细阐述了其内部架构、自动与手动两种工作模式,并重点介绍了在长距离板间互连、复杂背板设计等典型应用场景中的关键作用。

weixin_29195615的博客 509

我的世界之BFC

BFC的规则、使用,使用BFC清除浮动,文字环绕,margin塌陷等问题

YouZi_X的博客 2712

百度慧眼人口位置数据:从原理到实战的GIS处理全流程

本文详细解析百度慧眼人口位置数据的处理全流程,从基本原理到实战应用。通过空间网格划分、终端数量统计等技术手段,百度慧眼数据能准确反映人群分布特征。文章涵盖坐标系转换、核密度分析、热力图制作等GIS处理技巧,并分享商业选址、城市规划等典型业务场景的解决方案,帮助读者高效利用这一数据资源。

weixin_30872157的博客 534

BFC:什么是BFC?BFC作用?如何创建BFC?BFC应用场景

BFC属于普通流。BFC全称是Block Formatting Context,意思就是块级格式化上下文。你可以把BFC看做元素的一个属性,当元素拥有的BFC属性,这个元素就可以看作是隔离了的独立容器,容器里边的元素不会影响到容器外部的元素。

m0_74114605的博客 5651

Python爬虫抓取淘宝商品详情页信息:从入门到高级技术应用

通过本篇博客,我们了解了如何使用Python爬虫抓取淘宝商品详情页的信息,如何使用requests和Selenium抓取静态和动态内容,如何应对淘宝的反爬虫机制,如何将抓取的数据保存到CSV文件等。随着爬虫技术的不断发展,开发者可以根据需要选择合适的工具和技术,如使用分布式爬虫框架提高抓取效率,或者利用OCR技术处理验证码等问题。在进行淘宝爬虫时,需要注意遵循相关法律法规和平台的爬虫政策,避免对平台造成过度的负担或侵犯其合法权益。

2201_76125261的博客 462

ArcMap|使用模型构建器将kml文件批量转图层

参考:https://www.jianshu.com/p/6de18f846024 第一步:打开模型构建器,拖入kml转图层工具 第二步:插入文件迭代器 第三步:双击“迭代文件”,选择kml所在文件夹 第四步:将“File.kml”与“KML转图层”连接,点击“输入KML文件” 第五步:双击“KML转图层”,更改输出位置,输出数据名称改为%名称% 第六步:运行模型 得到结果: ...

个人学习笔记 3601

BFC是什么

面试必会知识BFC 文章目录面试必会知识BFC前言一、什么是BFC二、BFC的特点三、BFC布局规则四、哪些元素会产生BFC五、在布局中BFC的应用场景总结 前言 本片文章主要总结了面试中常问的面试题BFC 首先了解一下什么是BFC 一、什么是BFC 1、BFC即 Block Formatting Contexts (块级格式化上下文), 是 W3C CSS2.1 规范中的一个概念。 2、BFC是指浏览器中创建了一个独立的渲染区域,并且拥有一套渲染规则,他决定了其子元素如何定位,以及与其他元素的相互关系

qq_43205326的博客 2万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

面试官:什么是BFC?BFC有什么特性?如何创建BFC?BFC有什么作用?

面试官:什么是BFC?BFC有什么特性?如何创建BFC?BFC有什么作用?

程序员鱼乐 1万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【CSS】什么是BFC?BFC有什么作用?

BFC(block formatting context)块级格式化上下文,他是页面中的一块渲染区域,并且有一套属于自己的渲染规则,BFC 是一个独立的布局环境,具有BFC特性的元素可以看作是隔离的独立容器,容器里面的元素不会在布局上影响到外面的元素。:只需要把两个div放置不同BFC中,那这两个BFC的内容将不会互相干扰,将两个di分别放置container容器中,然后通过overflow:hidden触发BFC;:这是因为给子元素添加了浮动,使它脱离了文档流;:红色方框覆盖蓝色方块;

m0_61049675的博客 6580

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

BFC——通俗理解什么是BFC

文章目录常规流布局BFC的概念BFC的创建BFC的特性BFC的应用解决高度坍塌的问题相邻父子元素外边距合并问题无视浮动盒子排序问题总结 在理解BFC之前,我们需要先回顾常规流布局的概念(忘记或者还没看的小伙伴点击前端CSS基础——常规流布局) 常规流布局 常规流块盒独占一行 常规流块盒在垂直方向依次摆放 常规流块盒父子元素外边距合并 常规流块盒排列无视浮动元素或者脱离常规流布局的元素 常规流块盒...

木的又 4037

什么是BFC?BFC的原理是什么?如何创建BFC?

1,什么是BFC? 1)BFC(Block formatting context)直译为“块级格式化上下文”。BFC它是一个独立的渲染区域,只有Block-level box(块元素)参与,它规定了内部的Block-level box如何布局,并且与这个区域外部毫不相关。 2)可以理解成:创建了 BFC的元素就是一个独立的盒子,里面的子元素不会在布局上影响外面的元素(里面怎么布局都不会影响外部),...

前进的小申申 1万+

什么是BFC?BFC可以解决什么问题

一、规范解释:块格式化上下文(Block Formatting Context,BFC)是Web页面的可视化CSS渲染的一部分,是布局过程中生成块级盒子的区域,也是浮动元素与其他元素的交互限定区域二、通俗理解:BFC 是一个独立的布局环境,可以理解为一个容器,在这个容器中按照一定规则进行物品摆放,并且不会影响其它环境中的物品三、BFC是一个css渲染特殊的一部分,需要一定的条件才能触发四、BFC可以解决的问题1、解决外边距塌陷的问题1)、父子元素的外边距塌陷问题我们在一个元素内部子元素,设置了一个margi

9877

什么是BFC?BFC有什么作用?

什么是BFC?BFC全称是Block Formatting Context,意思就是块级格式化上下文。你可以把BFC看做一个容器,容器里边的元素不会影响到容器外部的元素。

dd的博客 883

什么是BFC?

面试题——什么是BFC

Code6E的博客 2116

什么是BFC以及BFC的作用

BFC 定义 BFC(Block formatting context)直译为"块级格式化上下文"。它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level Box如何布局,并且与这个区域外部毫不相干。 在解释什么是BFC之前,我们需要先知道Box、Formatting Co...

wang415229224ye的博客 1355

CSS专题之BFC

在上一篇文章中,如何避免外边距重叠的部分有提到,给容器元素添加(或者非visible的值),可以避免与内部子元素产生嵌套外边距重叠,出现这个效果的原因是因为BFC。BFC 也是前端面试中必备的知识点,所以就有了这篇文章来梳理一下,如果哪里写的有问题欢迎指出。BFC 定义:块格式化上下文,是一块独立的渲染区域,内部外部互不影响。创建方式:常用的有、浮动、绝对定位等。常见作用阻止外边距重叠解决高度塌陷避免浮动元素遮挡内容控制元素是否避开浮动实践建议优先使用(需注意兼容性)

m0_56326830的博客 1103

什么是BFC?BFC有什么特性?如何创建BFC?BFC有什么作用?

BFC全称是Block Formatting Context,意思就是块级格式化上下文。你可以把BFC看做一个容器,容器里边的元素不会影响到容器外部的元素。

weixin_55209970的博客 1157

什么是BFC?BFC的原理是什么?BFC的应用

在上面的代码中,我们首先使用clearfix hack来清除子元素的浮动,然后将父元素的overflow属性设置为hidden,以生成一个BFC来避免子元素的浮动影响到父元素的布局。在上面的代码中,我们将左栏设置为浮动元素,然后将右栏的overflow属性设置为hidden,以创建一个BFC,从而避免了左栏的浮动影响到右栏的布局。在BFC中,浮动元素会被包裹在BFC的内部,不会影响到BFC外部的元素的布局。在BFC中,浮动元素会被包裹在BFC的内部,不会影响到BFC外部的元素的布局。

tyxjolin的专栏 1419

什么是BFC?BFC的形成条件?BFC的应用场景

BFC 是块级格式化上下文,是在盒模型下对块级元素进行布局的独立渲染区域,该渲染区域内的元素和区域外的元素是相互隔离的。不同BFC内部的元素互不影响。

qq_52822043的博客 2525

关于BFC机制

一、BFC定义 Formatting context(格式化上下文) 是 W3C CSS2.1 规范中的一个概念。它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系和相互作用 BFC是Block Formatting Contexts(块级格式化上下文)的缩写,也就是按照普通块级方式定位渲染 具有BFC特性的元素是一个独立的布局环境,可看着为一个不受外界影响的隔离容器,里面的盒子会沿着父元素边框排列,无论怎样都不会影响到外边去 二、BFC布局规则 .

qq_48739475的博客 2026

什么是BFC

这里是修真院web小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解web知识/技能,本篇分享的是: 【 什么是BFC】 大家好,我是IT修真院武汉第10期学院,一枚正直、纯洁、善良的前端程序员。 今天给大家分享一下,修真院官网任务task14,深度思考的知识点——什么是BFC。 1.背景介绍 B...

IT修真院:初学者转行到互联网的聚集地 1749
上一篇: css--盒子模型和层叠关系
下一篇: js--笔试题1
github_34514750
博客等级 码龄11年 44粉丝 198原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值