CSS BFC是什么,应用实例

CSS BFC(块级格式化上下文)是一个Web页面渲染时生成的一种独立的渲染区域,它定义了一套渲染规则,用于控制块级盒子的布局和浮动元素与其他元素的交互。BFC可以避免出现一些常见的布局问题,提高页面的可靠性和可维护性。

BFC的形成有以下几种情况:

  • 根元素或包含根元素的元素
  • 浮动元素(float不为none)
  • 绝对定位元素(position为absolute或fixed)
  • 行内块元素(display为inline-block)
  • 表格单元格(display为table-cell)
  • 表格标题(display为table-caption)
  • overflow值不为visible的块级元素

应用实例:

1.清除浮动:

在一个包含浮动元素的容器内,当给该容器设置BFC时,容器的高度将被撑高,从而不需要手动清除浮动。

复制代码
.container{
  overflow: hidden; /* 设置BFC */
}

2.避免margin重叠:

在同一个BFC中的两个相邻元素的margin会发生重叠,可以利用BFC避免这种现象。

复制代码
.container{
  overflow: hidden; /* 设置BFC */
}
.box{
  margin-bottom: 20px;
}

3.实现多行文本溢出省略:

复制代码
.container{
  display: flex;
  overflow: hidden; /* 设置BFC */
}
.box{
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
相关推荐
UI设计兰亭妙微9 分钟前
兰亭妙微加载体验设计白皮书:从骨架屏到后台加载的全场景优化策略
前端·b端界面设计·ui设计公司
逆光如雪14 分钟前
移动端卡片边框怎么做高级?我用 CSS 实现了设计师的刁钻要求
前端·css·vue.js
scan72415 分钟前
龙虾读取session历史消息
java·前端·数据库
莹宝思密达21 分钟前
地图显示西安经济开发区边界线-2023.12
前端·vue.js·数据可视化
lizhongxuan35 分钟前
LLM Wiki:让大模型替你打理知识库的完整指南
前端·后端·面试
宇擎智脑科技1 小时前
Claude Code 源码分析(七):终端 UI 工程 —— 用 React Ink 构建工业级命令行界面
前端·人工智能·react.js·ui·claude code
dragon7251 小时前
Flutter错误处理机制
前端·flutter
数据知道1 小时前
claw-code 源码详细分析:Bootstrap Graph——启动阶段图式化之后,排障与扩展为什么会变简单?
前端·算法·ai·bootstrap·claude code·claw code
悟空瞎说1 小时前
深度解析:Vue3 为何弃用 defineProperty,Proxy 到底强在哪里?
前端·javascript
leafyyuki1 小时前
告别 Vuex 的繁琐!Pinia 如何以更优雅的方式重塑 Vue 状态管理
前端·javascript·vue.js