博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BFC自适应布局
阅读量:6203 次
发布时间:2019-06-21

本文共 912 字,大约阅读时间需要 3 分钟。

BFC(Block Formatting Context)块级格式化上下文。它是一个独立的渲染区域。

它决定了块级元素如何对它的内容进行布局,以及与其他元素的关系和相互关系。

         块级元素:父级(是一个块元素)

         内容:子元素(是一个块元素)

         其他元素:与内容同级别的兄弟元素

         相互作用:BFC里的元素与外面的元素不会发生影响              

触发条件或者说哪些元素会生成BFC:

  满足下列条件之一就可触发BFC

  【1】根元素

  【2】float的值不为none

  【3】overflow的值不为visible(hidden、auto、scroll)

  【4】display的值为inline-block、table-cell、table-caption、flex

  【5】position的值为absolute或fixed  

BFC有哪些作用:

  1.自适应两栏布局

  2.可以阻止同级元素被浮动元素覆盖

           

  3.可以包含浮动元素——清除内部浮动

    通过改变高度塌陷的父盒子的属性值,使其成为BFC,以此来包含子浮动盒子。

           

  4.分属于不同的BFC时可以阻止margin重叠

属于同一个BFC的两个相邻块级子元素的上下margin会发生重叠,所以当两个相邻块级子元素分属于不同的BFC时可以阻止margin重叠

操作方法:给其中一个div外面包一个div,然后通过触发外面这个div的BFC,就可以阻止这两个div的margin重叠

              

BFC布局与普通文档流布局区别                  

         普通文档流布局规则

                1.浮动的元素是不会被父级计算高度

                2.非浮动元素会覆盖浮动元素的位置

                3.margin会传递给父级

                4.两个相邻元素上下margin会重叠

        BFC布局规则

                1.浮动的元素会被父级计算高度(父级触发了BFC)

                2.非浮动元素不会覆盖浮动元素位置(非浮动元素触发了BFC)

                3.margin不会传递给父级(父级触发了BFC)

                4.两个相邻元素上下margin不会重叠(给其中一个元素增加一个父级,然后让他的父级触发BFC)

转载于:https://www.cnblogs.com/xiaoan0705/p/9035637.html

你可能感兴趣的文章
MBProgressHUD的基本使用
查看>>
elk 简单实用
查看>>
学习大数据课程必须了解的大数据开发课程大纲
查看>>
计算机中十进制转二进制的相关技巧
查看>>
阿里云异构计算发布:轻量级GPU云服务器实例VGN5i
查看>>
植树节活动策划主题班会PPT
查看>>
UEFI启动模式的服务器使用U盘安装Linux系统
查看>>
供应链支付电商流程图是什么样的?如何绘制
查看>>
企业wifi管家——让天下没有难管的wifi
查看>>
项目中遇到地图显示问题的整理和解决(针对百度地图)
查看>>
砺鹰教育紧紧跟随“互联网+教育”助力优质教育资源共享
查看>>
《pro git》学习手记2
查看>>
Linux互信及互信失效问题
查看>>
一年前生了个娃
查看>>
Python的高阶函数和匿名函数
查看>>
我的友情链接
查看>>
最近状态有点儿不好
查看>>
2015Android移动开发应用主流菜单模式
查看>>
关于 devops
查看>>
我的友情链接
查看>>