千家信息网

CSS里的块级格式是什么

发表于:2025-11-14 作者:千家信息网编辑
千家信息网最后更新 2025年11月14日,今天小编给大家分享一下CSS里的块级格式是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解
千家信息网最后更新 2025年11月14日CSS里的块级格式是什么

今天小编给大家分享一下CSS里的块级格式是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

  1.BFC定义

  BFC(Blockformattingcontext)直译为"块级格式化上下文"。它是一个独立的渲染区域,只有Block-levelbox(块级元素)参与,它规定了内部的Block-levelBox如何布局,并且与这个区域外部毫不相干.

  通俗地来说:创建了BFC的元素就是一个独立的盒子,里面的子元素不会在布局上

  影响外面的元素(里面怎么布局都不会影响外部),BFC任然属于文档中的普通流

  2.BFC的生成:

  知道了BFC怎么触发BFC

  满足以下条件之一都可以触发BFC,变身为BFC

  根元素

  float属性不为none

  position不为static和relative

  overflow不为visible

  display为inline-block,table-cell,table-caption,flex,inline-flex

  你会发现BFC无处不在,只是自己用的时候不知道而已

  3.BFC布局规则:

  变身为BFC后有什么特性呢,以下:

  内部的Box会在垂直方向,一个接一个地放置。

  Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠

  每个元素的marginbox的左边,与包含块borderbox的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。

  BFC的区域不会与floatbox重叠。

  BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。

  计算BFC的高度时,浮动元素也参与计算

  4.BFC作用:

  用起来comeboby

  1.防止外边距重叠

  bfc导致的属于同一个bfc中的子元素的margin重叠(Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠)

  问题:由图可以看到,String1和String2之间只有20px的margin,按理来说应该是40px,但这是在bfc中导致了他们的margin重叠

  代码:

  

  String1

  String2

  解决方法:我们可以在div外面包裹一层容器,并触发该容器生成一个BFC。那么两个div便不属于同一个BFC,就不会发生margin重叠了。

  代码:

  

  String1

  String2

  2.清除浮动:

  问题:当元素的子元素都浮动后,会出现高度坍塌的现象,即父容器的高度不会被撑开

  代码:

  

  

  

  解决方法:

  bfc的规则:计算BFC的高度时,浮动元素也参与计算所以只要将父容器设置为bfc就可以把子元素包含进去:

  这个容器将包含浮动的子元素,它的高度将扩展到可以包含它的子元素,在这个BFC,这些元素将会回到页面的常规文档流。

  .pre2{

  width:200px;

  border:2pxsolidred;

  /*设置overflow*/

  overflow:hidden;

  }

  3.解决布局:防止文字环绕

  代码:

  

  

  sdfadsfdfffffffffdsfsfffffsfdfsdsdfsdffffffff

  这个p元素并没有移动,但是它却出现在浮动元素的下方。p元素的lineboxes(指的是文本行)进行了移位。此处lineboxes的水平收缩为浮动元素提供了空间。

  bfc的规则:每个元素的marginbox的左边,与包含块borderbox的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。

  解决这个问题只要将p元素添加overflow:hidden使其成为一个新的bfc就可以了

以上就是"CSS里的块级格式是什么"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

很赞哦!
元素 浮动 容器 格式 布局 高度 代码 知识 篇文章 两个 区域 就是 方向 规则 问题 影响 独立 内容 只有 文档 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络技术发展SDN调研报告 网络安全科技馆沈阳 服务器管理口连接笔记本电脑 修改数据库的表的结构用语 色弱可以自学软件开发吗 医院住院管理系统数据库的建立 网络安全员的考核 互联网金融科技行业发展前景 数据库异步操作 安卓简单的数据库 新罗区昕速糖网络技术工作室 netty棋牌服务器 mysql数据库实训五思考 吉林云服务器试用找哪家虚拟主机 服务器上的打印机 数据库串口软件 全球软件开发志愿者 煤矿软件开发驻场 电脑服务器一直在主画面 lg手机激活与谷歌服务器 校园邮箱服务器 深圳服务器电源厂家有哪些 网络安全考核评价表 计算机网络技术专业学些什么 网络安全法纪警示 软件开发述职报告ppt模版 区块链数据库项目 杭州米尚网络技术有限公司 网络技术应用的含义 网络安全代理服务技术优点
0