关于css中bfc的理解

首先需要了解的是bfc的缩写是block formatting context 块级格式化上下文

那么块级格式化上下文意味着我们在bfc的区域内生成了一块独立于当前文本流的样式、它不受外界样式的影响、有着专属于自己的样式。

基于这样的定义我们可以避免一些样式冲突、在我们开发者面对复杂布局时可以更加从容的应对,

与bfc对应的是我们的ifc布局即内联式样式布局,以垂直竖列进行布局,不会生成新的块级容器

以上是对于bfc的理解

那么bfc是在什么特定情况下生成呢,或者换句话说开发的过程中需要怎么操作,可以借助我们的bfc从容面对我们复杂的布局呢

  1. 根元素:即HTML文档的顶级元素。
  2. 浮动元素 :元素的float属性值不是none
  3. 绝对定位元素 :元素的position属性值为absolutefixed
  4. 行内块元素 :元素的display属性值为inline-block
  5. 表格单元格 :元素的display属性值为table-cell
  6. 表格标题 :元素的display属性值为table-caption
  7. display值为flow-root的元素:这会创建一个新的块格式化上下文。
  8. overflow值不为visible的块元素 :即元素的overflow属性值为hiddenautoscroll
  9. flex容器 :即元素的display属性值为flexinline-flex

ps不是所有的display都会导致bfc

这边除了none block inline

相关推荐
工边页字2 分钟前
为什么 RAG系统里,Embedding成本往往远低于 LLM成本,但很多公司仍然疯狂优化 Embedding?
前端·人工智能·后端
墨渊君3 分钟前
OpenClaw 上手实践: 使用 Docker 从构建到可用全流程指南
前端·agent
冰暮流星5 分钟前
javascript之回调函数
开发语言·前端·javascript
米丘9 分钟前
Rollup 打包工具
前端
We་ct10 分钟前
LeetCode 74. 搜索二维矩阵:两种高效解题思路
前端·算法·leetcode·矩阵·typescript·二分查找
moneyinto10 分钟前
Three.js 必背核心方法
前端
wuhen_n12 分钟前
Vue3 组件中的图片懒加载与渐进式加载
前端·javascript·vue.js
叫回忆12 分钟前
elpis的npm抽离与发布
前端·javascript
wuhen_n20 分钟前
Vite 构建层面的图片优化:从压缩到转换
前端·javascript·vue.js
hashiqimiya21 分钟前
vue项目组装-路由-文件修改地方
前端·javascript·vue.js