• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >div/css > CSS使用BFC规则布局引发外层div包裹内层div的处理方法

CSS使用BFC规则布局引发外层div包裹内层div的处理方法

作者:Aaron 字体:[增加 减小] 来源:互联网 时间:2017-06-02

本文主要包含css bfc,css中的bfc,bfc233660333,bfc,bfc外滩金融中心等相关知识,Aaron 希望在学习及工作中可以帮助到您

BFC的概念
BFC全称Block Formatting Context ,直译“块级格式化上下文”,也有译作“块级格式化范围”。它是 W3C CSS 2.1 规范中的一个概念,它决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用。通俗的讲,就是一个div内部,我们用float和margin布局元素。

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

创建一个BFC
一个BFC可以被显式的触发。如果想要创建一个新的BFC,只需要给它添加上面提到的任何一个CSS样式就可以了。
例如,请看下面的 HTML :

</div>
  1. <div class="container">  
  2.     Some Content here   
  3. </div>  
</div> </div>

一个新的BFC可以通过给容器添加任何一个触发BFC的CSS样式,如 overflow: scroll , overflow: hidden , display: flex , float: left ,或者 display: table 来创建。
display:table 可能会产生一些问题
overflow:scroll 可能会显示不必要的滚动条
float:left 将会把元素置于容器的左边,其他元素环绕着它
overflow:hidden 将会剪切掉溢出的元素
所以每当想要创建一个新的BFC的时候,我们会基于我们的需求选择最好的样式条件。为了一致性,我在这篇文章所给出的例子中全部使用了 overflow: hidden

</div>
  1. container {   
  2.     overflow: hidden;   
  3. }  
</div> </div>

你可以自由使用除了 overflow: hidden 之外的样式声明。

BFC布局引发的问题
我们看看BFC布局引发的问题吧。
例如如下代码

</div>
  1. <!doctype html>   
  2. <html lang="en">   
  3. <head>   
  4.     <meta charset="UTF-8">   
  5.     <title>Clear float</title>   
  6.     <style type="text/css">   
  7.         .container{   
  8.             margin: 30px auto;   
  9.             width:600px;   
  10.             height: 300px;   
  11.         }   
  12.         .p{   
  13.             border:solid 3px #a33;   
  14.         }   
  15.         .c{   
  16.             width: 100px;   
  17.             height: 100px;   
  18.             background-color: #060;   
  19.             margin: 10px;   
  20.             float: left;   
  21.         }   
  22.     </style>   
  23. </head>   
  24. <body>   
  25.     <div class="container">   
  26.         <div class="p">   
  27.             <div class="c"></div>   
  28.             <div class="c"></div>   
  29.             <div class="c"></div>   
  30.         </div>   

您可能想查找下面的文章:

  • CSS使用BFC规则布局引发外层div包裹内层div的处理方法

相关文章

  • 2017-06-02CSS实现的灰色下拉菜单效果代码
  • 2017-06-02背景偏移取图标的实现方法
  • 2017-06-02html+css+div实现电影结束效果
  • 2017-06-02div+css布局中的alpha 不透明度使用说明
  • 2017-06-02给DIV添加滚动条的实现代码
  • 2017-06-02div仿checkbox表单样式美化及功能有素材
  • 2017-06-02在div底部显示背景图片实现代码
  • 2017-06-02Div+CSS仿支付宝登录页面
  • 2017-06-02不固定宽度和高度的情况下CSS调整div居中的方法总结
  • 2017-06-02学习DIV+CSS网页布局之三列布局

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • DIV CSS制作的个性水平导航菜单实例
    • CSS行内元素和块级元素的居中实例分析
    • a和span组合定义按钮样式实例分享
    • 仿Word自动套用格式使用CSS设置表格样式实例
    • css vertical-align属性的一些理解与认识(一)
    • IE6 两个div有间隙的问题(IE 3px bug)
    • 固定宽高且DIV绝对居中实现思路及示例
    • 另一个角度谈谈DIV CSS
    • 固定宽高的DIV如何绝对居中
    • 学习DIV+CSS网页布局之一列布局

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有