HTML(15)——盒子模型

盒子模型组成

  • 内容区域 -width&height
  • 内边距-padding (出现在内容与盒子边缘之间)
  • 边框线-border
  • 外边距-margin (出现在盒子外面)

div {

width: 200px;

height: 200px;

background-color: rgb(85, 226, 193);

padding: 20px;

border: 2px solid #000;

margin: 20px;

}

盒子模型------边框线

属性名:border(bd)

属性值:边框线粗细 线条样式 颜色(不区分顺序)

常用的线条样式

属性值 线条样式
solid 实线
dashed 虚线
dotted 点线

同时还能设置单方向边框线

属性名:border-方位名词(bd+方位名词首字母)

例如:

盒子模型------内边距

作用:设置内容与盒子边缘之间的距离

属性名:padding/padding-方位名词

padding的多值写法

|------|-----------------------------|-----------------------|
| 取值个数 | 示例 | 含义 |
| 一个值 | padding:20px | 四个方向均为20px |
| 四个值 | padding:10px 20px 30px 40px | 分别代表上,右,下,左 |
| 三个值 | padding:10px 20px 30px | 上:10px ;左右20px ;下30px |
| 两个值 | padding:10px 20px | 上下:10px;左右20px |

盒子模型------尺寸计算

盒子尺寸=内容尺寸+boder尺寸+内边距尺寸

解决盒子撑大的问题:

  • 手动做减法,减掉border/padding的尺寸
  • 内减模式:box-sizing:border-box

示例:

最开始的盒子为

div {

width: 200px;

height: 200px;

background-color: rgb(85, 226, 193);

}

在添加边框和内边距后

div {

width: 200px;

height: 200px;

background-color: rgb(85, 226, 193);

border: 20px solid rebeccapurple;

padding: 30px;

}

盒子由原来的200×200变为300×300(原因是四边都要加上border和padding)

此时使用手动减法,减去border和padding的尺寸

div {

width: 100px;

height: 100px;

background-color: rgb(85, 226, 193);

border: 20px solid rebeccapurple;

padding: 30px;

}

或者使用第二种内减模式

div {

width: 200px;

height: 200px;

background-color: rgb(85, 226, 193);

border: 20px solid rebeccapurple;

padding: 30px;

box-sizing: border-box;

}

以上两种可以避免盒子被撑大。

盒子模型------外边距

属性名:margin

与padding属性写法完全相同,包括多值写法,同时margin不会撑大盒子。

实现版心居中的效果:要求盒子必须要有width属性

margin: 0 auto;

相关推荐
anOnion5 小时前
构建无障碍组件之Menu Button pattern
前端·html·交互设计
用户47949283569155 小时前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端
JieE2125 小时前
LeetCode 101. 对称二叉树|JS 递归 + 迭代双解法,彻底搞懂镜像判断
javascript·算法
冬奇Lab7 小时前
AI Workflow 定义的四次演进:从 Markdown 到 JS 脚本,再到分布式多 Agent
javascript·人工智能·agent
zhangxingchao8 小时前
Kotlin常用的Flow 操作符整理
前端
IT_陈寒9 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
Pedantic10 小时前
SwiftUI 手势笔记
前端·后端
橙子家11 小时前
浏览器缓存之【结构化数据库与缓存】: IndexedDB、Cache storage 和 Storage buckets
前端
user205855615181311 小时前
X6 中边悬浮置顶,规避 `mouseleave` 事件丢失问题
前端
李明卫杭州11 小时前
CSS aspect-ratio 属性完全指南
前端