CSS 的盒模型

previewfile_1658340036

CSS 的盒模型

在HTML里,每一个元素就相当于是一个矩形的 “盒子” ,这个盒子由以下这几个部分构成:1.边框border,2.内容content,3.内边距padding,4.外边距margin
在这里插入图片描述

image-20240225151115558


边框border

基础属性描述
border-width粗细
border-style样式
border-color颜色

注:border-style属性默认是没边框

border-style: solid;=> 实线边框
border-style: dashed; => 虚线边框
border-style: dotted; => 点线边框

示例代码
image-20240225152614075

运行效果

image-20240225153159224

发现的现象: 边框会撑大盒子

image-20240225153128358

image-20240225153436481

可以看到 width, height 是 200*100, 而最终整个盒子大小是 220 * 120.
原因: 上边距的边框是10个像素,下边距的边框也是10个像素,高度height为100+10+10,变成120像素,宽度也是同理。

如何解决这个现象

通过 box-sizing 属性可以修改浏览器的行为, 使边框不再撑大盒子

image-20240225154405613

结果:
image-20240225154625005

image-20240225154711449

border属性的简写写法
示例:

border-color: black;
border-style: solid;
border-width: 10px; 

等效于(对于3个属性值没有顺序要求)

 border: black solid 10px;

内边距padding

padding设置内容和边框之间的距离,默认内容是顶着边框来放置的
控制四个方向上边距的属性分别为:padding-toppadding-bottompadding-leftpadding-right

实现效果: 内容左边和上方留有一部分区域
image-20240225171852389

示例代码
image-20240225172339320

运行效果
image-20240225172442211

简写写法

可以把多个方向的 padding 合并到一起

  • 第一种:padding: 5px; 表示四个方向都是 5px
  • 第二种:padding: 5px 10px;表示上下内边距 5px, 左右内边距为 10px
  • 第三种:padding: 5px 10px 20px;表示上边距 5px, 左右内边距为 10px, 下内边距为 20px
  • 第四种:padding: 5px 10px 20px 30px;表示上5px, 右10px, 下20px, 左30px(顺时针)

示例

padding-left: 10px;
padding-top: 10px;
padding-right: 10px;
padding-bottom: 10px;

等效于

padding: 10px;

外边距margin

margin控制盒子和盒子之间的距离,默认距离0
控制四个方向上边距的属性分别为:margin-topmargin-bottommargin-leftmargin-right

示例代码
image-20240225180504122

运行结果
image-20240225180618258

简写写法
规则和padding一样

margin: 10px; // 四个方向都设置
margin: 10px 20px; // 上下为 10, 左右 20
margin: 10px 20px 30px; // 上 10, 左右 20, 下 30
margin: 10px 20px 30px 40px; // 上 10, 右 20, 下 30, 左 40

  • 21
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值