CSS中关于触发BFC
来源:互联网 发布:淘宝服装模特摄影 编辑:程序博客网 时间:2024/06/08 18:59
一、BFC 定义
1、BFC布局规则:
(1)内部的Box会在垂直方向,一个接一个地放置。
(2)Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠
(3)每个元素的margin box的左边, 与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
(4)BFC的区域不会与float box重叠。
(5)BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。
(6)计算BFC的高度时,浮动元素也参与计算
三、哪些元素会生成BFC?
根元素
float属性不为none
position为absolute或fixed
display为inline-block, table-cell, table-caption, flex, inline-flex
overflow不为visible
--------------------------------------------------------------------------------------------------------------
做一个侧边栏目但是被包含了
---------------------------------------------------------------------------------------------------------------
是不是出问题了呢?
--出发BFC
--------------------------------------------------------------------------------------------------------------
经典的上边距重叠问题
实验2:
margin-top: 100px;---这句话如果加上和没加有什么区别呢 ------------BFC的区域不会与float box重叠 用main触发BFC
实验3:影响别的元素
当我们给main里边的元素设置了过多的值800px的时候,势必会印象外边的东西
当我们设置了BFC的时候,就不会发生这种情况-------------------BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素
实验:当文字变多的时候会发生什么事情呢?
我们发现,文字环绕了---这很忧伤
这时候我们可以单独为P出发我们的BFC
.info {background: #ccc;color: #fff;overflow: hidden}
实验
发生了什么?float之后的元素没有撑开我们的盒子,而我们的原则,计算BFC的高度时,浮动元素也参与计算
触发BFC
案例:
出问题了,BFC里边元素margin重叠了
BFC(Block formatting context)直译为"块级格式化上下文"。它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level Box如何布局,并且与这个区域外部毫不相干。
1、BFC布局规则:
(1)内部的Box会在垂直方向,一个接一个地放置。
(2)Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠
(3)每个元素的margin box的左边, 与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
(4)BFC的区域不会与float box重叠。
(5)BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。
(6)计算BFC的高度时,浮动元素也参与计算
三、哪些元素会生成BFC?
根元素
float属性不为none
position为absolute或fixed
display为inline-block, table-cell, table-caption, flex, inline-flex
overflow不为visible
--------------------------------------------------------------------------------------------------------------
做一个侧边栏目但是被包含了
---------------------------------------------------------------------------------------------------------------
是不是出问题了呢?
--出发BFC
--------------------------------------------------------------------------------------------------------------
经典的上边距重叠问题
实验2:
margin-top: 100px;---这句话如果加上和没加有什么区别呢 ------------BFC的区域不会与float box重叠 用main触发BFC
实验3:影响别的元素
当我们给main里边的元素设置了过多的值800px的时候,势必会印象外边的东西
当我们设置了BFC的时候,就不会发生这种情况-------------------BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素
实验:当文字变多的时候会发生什么事情呢?
我们发现,文字环绕了---这很忧伤
这时候我们可以单独为P出发我们的BFC
.info {background: #ccc;color: #fff;overflow: hidden}
实验
发生了什么?float之后的元素没有撑开我们的盒子,而我们的原则,计算BFC的高度时,浮动元素也参与计算
触发BFC
案例:
出问题了,BFC里边元素margin重叠了
阅读全文
0 0
- CSS中关于触发BFC
- CSS中关于触发BFC
- 理解CSS中BFC
- 【转】理解CSS中BFC
- css中BFC元素是什么?
- css中BFC格式化上下文
- CSS中BFC的应用
- CSS-关于BFC的理解(转)
- CSS BFC
- css BFC
- 谈谈对CSS中BFC的理解
- 【CSS】浅谈css中格式化上下文BFC、IFC(一)
- 【CSS】浅谈css中格式化上下文BFC、IFC(二)
- [布局概念]关于CSS-BFC的深入理解
- 触发BFC实现简单自适应
- 怎样触发BFC清除浮动?
- CSS中包含块,层叠上下文,BFC,IFC究竟是什么?
- css巧妙构造BFC
- 初识scala
- Qt+ffmpeg仿格式工厂:编程中遇到的问题(三)
- 51nod1265判断四点共面
- 【github myLocker】select监听多个fd,互斥锁保护终端交互
- 设计模式之---命令模式
- CSS中关于触发BFC
- EasyDSS高性能流媒体服务器前端重构(二) webpack + vue + AdminLTE 多页面提取共用文件, 优化编译时间
- 理解高并发(20).大白话阿姆达尔定律
- 机器学习第九课(bagging,随机森林,样本不均衡)
- 各大公司对于java求职者的要求,你值得一看
- Thinkphp 模型->区间查询
- Test...
- 抽象类和接口
- 测试啊