当前位置: 首页 > news >正文

春招冲刺(二):BFC 盒子面试题总结

BFC 盒子面试题总结

Q1:BFC盒子是什么?

BFC全称是Block Formatting Context
意思就是块级格式化上下文
可以把BFC看做一个容器,容器里边的元素不会影响到容器外部的元素。

Q2:如何创建BFC?

  1. 根元素:body;
  2. 元素设置浮动:float 除 none 以外的值;
  3. 元素设置绝对定位:position (absolute、fixed);
  4. display 值为:inline-block、table-cell、table-caption、flex 等;
  5. overflow 值为:hidden、auto、scroll;

Q3:BFC的作用

  1. 解决 margin 的重叠问题:由于BFC是一个独立的区域,内部的元素和外部的元素互不影响,将两个元素变为两个BFC,就解决了margin重叠的问题。
  2. 解决高度塌陷的问题:在对子元素设置浮动后,父元素会发生高度塌陷,也就是父元素的高度变为 0。解决这个问题,只需要把父元素变成一个 BFC。常用的办法是给父元素设置overflow:hidden。
  3. 创建自适应两栏布局:可以用来创建自适应两栏布局:左边的宽度固定,右边的宽度自适应。

Q4:BFC的特点

  1. 垂直方向上,自上而下排列,和文档流的排列方式一致。
  2. 在 BFC 中上下相邻的两个容器的 margin会重叠
  3. 计算 BFC 的高度时,需要计算浮动元素的高度
  4. BFC区域不会与浮动的容器发生重叠
  5. BFC是独立的容器,容器内部元素不会影响外部元素
  6. 每个元素的左 margin 值和容器的左 border 相接触

参考博客

  • https://www.bilibili.com/read/cv21217433/
  • https://blog.csdn.net/guoao20000915/article/details/125685983
  • https://github.com/ljianshu/Blog/issues/15
http://www.lryc.cn/news/25276.html

相关文章:

  • Ep_计网面试题-本地IP地址怎么一层层向上转换?
  • MySQL高级三
  • set和map的基本使用
  • 已解决pip install wxPython模块安装失败
  • Linux基础——连接Xshell7
  • C++——智能指针1
  • [数据集][VOC][目标检测]翻越栏杆翻越防护栏数据集目标检测可用yolo训练-1035张介绍
  • 深度学习 | BN层原理浅谈
  • 每日面试题
  • 将IDEA的项目托管到gitee
  • 父类子类静态代码块、构造代码块、构造方法执行顺序
  • 【C++】开散列实现unordered_map与unordered_set的封装
  • 华为OD机试真题Python实现【删除指定目录】真题+解题思路+代码(20222023)
  • CSS选择器大全(上)
  • JavaScript 俄罗斯方块 - setTimeout和rAF
  • LeetCode:构造最大二叉树;使用中序和后序数组构造二叉树;使用前序和中序数组遍历二叉树。
  • nodejs实现jwt
  • 结构体占用内存大小如何确定?-->结构体字节对齐 | C语言
  • Vue和Uniapp:优缺点比较
  • AMBA-AXI(二)AXI的序,保序与乱序
  • APIs and Open Interface--非工单领、发料(含调拨)
  • 互联网医院系统软件开发|互联网医院管理系统开发的好处
  • 2.单例模式
  • 【保姆级】Java后端查询数据库结果导出xlsx文件+打印xlsx表格
  • Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
  • vue3生命周期
  • Python学习笔记10:开箱即用
  • 详解JAVA反射
  • 在nestjs中进行typeorm cli迁移(migration)的配置
  • 前端工程构建问题汇总