十二、理解不了盒子模型就用联想记忆法轻松解决(2)之深入理解

内边距

盒子内边距是内容与边框之间的距离,有四种取值方式:

  • 一个值:padding:5px; --- 上下左右边距都设置为 5px ;
  • 两个值:padding:3px 5px; --- 上下边距设置为 3px,左右边距设置为 5px ;
  • 三个值:padding:3px 5px 9px; --- 上边距设置为 3px,左右边距设置为 5px,下边距设置为 9px ;
  • 四个值:padding:3px 5px 9px 10px; --- 上边距设置为 3px,右边距设置为 5px,下边距设置为 9px, 左边距设置为 10px

记忆规则 :边距四周从 开始赋值,顺时针方向,如果没有赋值的,看对面,与对面值相同

也可以只给盒子的某个方向,单独设置内边距:padding-方位(left、right、top、bottom)

算上内边距,盒子的实际大小可以表示为:

盒子宽度 = 左边框 + 左内边距 + 内容宽度 + 右内边距 + 右边框 盒子高度 = 上边框 + 顶部内边距 + 内容高度 + 底部内边距 + 下边框

块级元素不会撑大盒子的特殊情况

如果 盒子没有设置宽度,此时子盒子的宽度默认 是父盒子的宽度,这时再给子盒子设置左右内边距或者左右边框,不会撑大盒子

盒模型自动内减

需求: 盒子尺寸300 X 300,背景粉色,边框10px黑色实线,上下左右内边距20px,如果不想盒子被撑大,有两种方式:

手动内减 :就是自己计算多余的盒子大小,手动在内容中减去,但这样做有一个缺点,如果项目中计算量太大,很麻烦,不易计算;

自动内减 :给盒子设置属性即可,示例:box-sizing:border-box;,这样做浏览器会自动计算盒子的多余大小,然后自动在内容中减去。

外边距

盒子外边距的取值方式与内边距类似 ,只是属性名不一致,外边距是margin

默认清除内外边距

浏览器会给部分标签设置默认的 margin 和 padding ,但一般在项目初始化的时候,需要先清除这些标签默认的 margin 和 padding ,后续根据需要,自己设置。

相关推荐
用户059540174463 小时前
把AI聊天机器人记忆存储测试从3小时压到5分钟,我用Pytest + Docker搭了一套自动化回归
前端·css
STU学生网页设计1 天前
大一学生作品《前端框架开发技术》 期末网页制作 HTML+CSS+JavaScript 个人主页网页设计实例
css·前端框架·html
用户059540174462 天前
大模型长记忆评测踩坑实录:2000条错位记忆,让我排查了整整3小时
前端·css
用户059540174462 天前
LangChain Memory 踩坑实录:10种异常场景差点搞崩生产,我们写了一套自动化测试保命
前端·css
用户059540174463 天前
Redis缓存回滚踩坑实录:一个配置失误,让我在凌晨3点丢了3000条数据
前端·css
এ慕ོ冬℘゜3 天前
纯 CSS 实现自定义 Switch 开关(商品上下架滑块)
前端·css
并不喜欢吃鱼3 天前
二.前端web开发:零基础吃透 CSS 核心知识
前端·css
思码梁田3 天前
CSS display 属性:从元素类型转换到隐藏元素的实用指南
前端·css·display·inline·block·none·inline-block
weipt3 天前
springboot项目运行的几种方式
javascript·css·html
用户059540174464 天前
把AI对话记忆存储测试从手工改成Playwright+pytest,覆盖率从20%提到96%,回归时间缩短90%
前端·css