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

第二章:盒模型的奥秘

第二卷:盒模型的奥秘

章节3:魔法盒的解剖课

教学目标:掌握盒模型(box model)四大组成部分(content/padding/border/margin),理解box-sizing对布局的颠覆性影响

魔法场景

第一幕:肿胀的魔法书
你在整理魔法图书馆时,发现一本《上古元素法典》被施加了奇怪的魔法——书页向外膨胀,几乎要撑破书皮。仔细查看HTML代码,发现是过度使用padding导致的:

<div class="book">
  <h2>元素的秘密</h2>
  <p>所有元素都有...(文字被挤压变形)</p>
</div>

第二幕:解剖实验室
导师用X光魔法展示元素内部结构:
在这里插入图片描述
不同部分的说明:

  • Margin(外边距) - 是盒子与其他元素之间的空间,外边距是透明的。
  • Border(边框) - 围绕在内边距之外的边框。
  • Padding(内边距) - 内容与边框之间的空间,内边距是透明的。
  • Content(内容) - 盒子的内容,显示文本和图像。

揭示默认content-box的陷阱:

.book {
   
  width: 600px;
  padding: 50px; /* 实际宽度变成700px */
}

盒模型有两种类型:
标准盒模型:width 和 hight 只包含内容区域,内边距、边框和外边距都在这个宽度和高度之外。
IE盒模型:也叫怪异盒模型,width 和 hight 包含内容区域、内边距和边框,但外边距在这个宽度和高度之外。

第三幕:体态矫正术
标准盒模型和 IE 盒模型可以通过 box-sizing 来切抽盒模型。你可以用box-sizing: border-box修复古籍:

.book {
   
  box-sizing: border-box; /* 激活包裹魔法 */
  width: 600px; /* 总宽度固定 */
  padding: 30px;
  border: 10px solid #8B4513;
  border-radius: 20px;
  box-shadow: 0 0 30px rgba(0,0,0,0.3);
}

http://www.dtcms.com/a/62835.html

相关文章:

  • 每天一道算法题【蓝桥杯】【使用最小花费爬楼梯】
  • 扩散 Transformer 策略:用于通才视觉-语言-动作学习的规模化扩散 Transformer
  • 51c大模型~合集10
  • 《使用 Python Flask + MySQL + ECharts 构建销售数据看板》实战案例笔记
  • osg安装编译第三方,完整详细过程。 libtiff/tif config.vc.hdoes not exist
  • GStreamer —— 2.17、Windows下Qt加载GStreamer库后运行 - “播放教程 5:色彩平衡“(附:完整源码)
  • 基于Debian12的SVN和Trac自动安装部署脚本
  • upload-labs-master通关攻略(17~19)
  • RSA算法:开启现代密码学的数学之钥
  • SpringMVC中有关请求参数的问题(映射路径,传递不同的参数)
  • 前端小食堂 | Day13 - Vue.js 进阶烹饪术
  • RISC-V特权模式与寄存器
  • 计网面试准备
  • Vue的生命周期
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_conf_param
  • FreeRTOS(7)队列集
  • Redis 主从复制详解:实现高可用与数据备份
  • 【MySQL - 表的内外连接】
  • 【13】单片机编程核心技巧:乘法运算
  • 《Python全栈开发》第2课:HTML骨架搭建 - 从零编写个人简历页面
  • 数字IC后端设计实现教程 |Innovus ICC2 Routing Pin Access Setting设置方法
  • 第十五届蓝桥杯大学B组(握手问题、小球反弹、好数)
  • ChatGPT课件分享(37页PPT)
  • 【亲测有效】Mac系统升级或降级Node.js版本,Mac系统调整node.js版本
  • 【3D视觉学习笔记1】针孔相机模型与坐标系变换
  • 【Azure 架构师学习笔记】- Azure Databricks (17) --Delta Live Table和Delta Table
  • 面试之《webpack从输入到输出经历了什么》
  • 基础网络安全-K8S 配置Ingress-controller 通过HTTPS处理服务请求
  • GB8599-2023标准测试包/小规格测试包/标准生物测试包1.5kg/满负载织物7.5kg/不锈钢金属测试包/空腔负载试验的过程挑战装置(PCD)
  • Linux网络编程之——网络初认识