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

一文大白话讲清楚CSS盒子模型和块级格式化上下文(BFC)

一文大白话讲清楚CSS盒子模型和块级格式化上下文(BFC)

1.啥是个CSS盒子

  • 鞋盒你家总有吧,方方正正,有长度有高度。
  • css盒子跟这个八九不离十
  • 当我们编写html页面时,写了很多的元素,比如"div","img"等,浏览器的渲染引擎会根据一定的标准(CSS基础框盒模型,CSS Basic box model),讲所有元素表示为一个个的盒子,然后按照你的css样式表去摆放这些盒子。
  • 一个盒子有四个基本部分:
  1. content,盒子的主体,理解为家里鞋盒里的鞋;对应就是实际内容,比如说文字或者图片等
  2. padding,盒子的内边距,理解为鞋距离鞋盒内侧有多远
  3. border,盒子的边框,理解为鞋盒的面厚度
  4. margin,盒子的外边距,理解为鞋盒距离旁边的鞋盒有多远
  • 来张图解释一下
    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 上代码

<meta http-equiv="content-type" content="text/html; charset=utf-8">
<style>.box{width: 200px;height: 100px;padding: 50px;margin: 40px;border: 30px solid red;overflow: hidden;box-sizing: content-box;}</style>
<div class="box">我是一个box1我是一个box1我是一个box1我是一个box1我是一个box1我是一个box
</div>
<div class="box">我是一个box2我是一个box2我是一个box2我是一个box2我是一个box2我是一个box2
</div>

在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 发现问题没有,我们设置的width是200,height设置是100,可在浏览器面width和height变成了360x260
  • 360怎么来的,200+50x2+30x2,也就是200+50+50+30+30,也就是width + padding-left + padding-right + border-let + border-right
  • 当然这只是数字显示360,我们可以看到,当鼠标移动到box1上时,实际上最大圈的黄色也被选中了,也就说margin也被算在盒子的长宽里面了。
  • 所以,盒子的实际宽度是440=360+40+40=360 + margin-left + margin-right
  • 也就是说,盒子的真正宽度=width + padding-left + padding-right + border-let + border-right + margin-left + margin-right=440
  • 这就是W3C标准盒子模型
  • 问题来了,这咋就是标准盒子模型了呢,为啥叫模型呢,我们接着往下说


http://www.mrgr.cn/news/81879.html

相关文章:

  • DAY176内网对抗-信息收集篇SPN扫描DC定位角色区域定性服务探针安全防护凭据获取
  • 安全见闻(一)
  • Oracle Dataguard(主库为 Oracle 11g 单节点)配置详解(3):配置备用数据库
  • PyTorch的torch.onnx.export函数导出包含多个输出的模型
  • 在 uni-app 中使用 wxml-to-canvas 的踩坑经验总结
  • Web防火墙和下一代防火墙的区别
  • LeetCode -Hot100 -75. 颜色分类
  • cesium小知识:ScreenSpaceEventHandler 详解示例
  • 均值聚类算法
  • 区块链安全常见的攻击——ERC777 重入漏洞 (ERC777 Reentrancy Vulnerability)【5】
  • 【深入剖析开源项目 Infrastructure:技术基石与无限可能】
  • docker 安装与配置 gitlab
  • java开发中注解汇总​​
  • 基于SpringBoot+Vue的旅游推荐系统
  • 网络基础知识总结
  • Postman接口测试03|执行接口测试、全局变量和环境变量、接口关联、动态参数、断言
  • 精通 CSS 阴影效果:从基础到高级应用
  • 2.微服务灰度发布落地实践(agent实现)
  • RabbitMQ工作模式(详解 工作模式:简单队列、工作队列、公平分发以及消息应答和消息持久化)
  • nss刷题
  • vue 基础学习
  • win10、win11-鼠标右键还原、暂停更新
  • Linux 笔记 /etc 目录有什么用?
  • Datawhale-AI冬令营二期
  • llm知识梳理
  • 深度学习笔记(9)——神经网络和反向传播