CSS盒子模型

颜色赋值

  • 三原色: 红绿蓝 RGB Red Green Blue , 每个颜色的取值范围0-255
  • 五种颜色赋值方式:
    • 颜色单词赋值: red/yellow/pink/purple…
    • 6位16进制赋值: #ff0000
    • 3位16进制赋值: #f00 每一位重复一次 等效ff0000
    • 3位10进制赋值: rgb(255,0,0)
    • 4位10进制赋值: rgba(255,0,0,0-1) a=alpha 设置透明度 值越小越透明

背景相关

  • background-image:url(“资源路径”); 设置背景图片
  • background-size: 宽度 高度; 设置背景图片尺寸
  • background-repeat: no-repeat; 禁止重复
  • background-position: 横向偏移值 纵向偏移值; 设置背景图片的位置,可以将偏移值换成偏移的百分比

文本和字体相关样式

  • text-align:left/right/center; 设置水平对齐方式
  • text-decoration:overline上划线/underline下划线/line-through删除线/none去掉文本修饰; 设置文本修饰
  • text-shadow:颜色 x偏移值 y偏移值 浓度; 设置文本阴影
  • line-height:20px; 设置行高,默认高度包裹文本, 可以实现垂直居中
  • font-size:20px; 设置字体大小
  • font-weight:bold/normal; 设置加粗和去掉加粗
  • font-style:italic;设置斜体
  • font-family: xxxx,xxx,xxx; 设置字体
  • font: 30px xxx,xxx,xxx; 设置字体大小+字体

设置元素的显示方式 display

  • block: 块级元素, 特点: 独占一行并可以修改宽高, 包括:h1-h6,p,div
  • inline: 行内元素, 特点: 共占一行,不能修改宽高, 包括:span,b,i,u,s,超链接a
  • inline-block:行内块元素,特点: 共占一行并可以修改宽高,包括:input,img
  • none: 隐藏元素

盒子模型

  • 盒子模型= content内容+margin外边距+border边框+padding内边距
  • 盒子模型用来控制元素的显示效果:
    • content内容: 控制内容的显示宽高
    • margin外边距: 控制元素的显示位置
    • border边框: 控制边框效果
    • padding内边距: 控制元素内容的位置

盒子模型之Content内容

  • 用来控制元素的显示宽高
  • 相关样式:
    • width 设置宽度
    • height 设置高度
  • 两种赋值方式: 1. 像素 2. 上级元素的百分比
  • 行内元素不能修改宽高,如果必须修改则将元素改成块级或行内块

盒子模型之Margin外边距

  • 作用:用来控制元素显示的位置
  • 元素距上级元素或相邻兄弟元素的距离称为外边距
  • 赋值方式:
    • margin-left/right/top/bottom:10px; 单独某一个方向添加外边距
    • margin:10px; 四个方向添加外边距
    • margin:10px 20px; 上下和左右赋值 左右auto时为居中
    • margin:10px 20px 30px 40px; 上右下左顺时针赋值
  • 上下相邻彼此添加外边距,取最大值. 左右相邻彼此添加外边距 两者相加
  • 行内元素上下外边距无效
  • 粘连问题: 当元素的上边缘和上级元素的上边缘重叠时,给元素添加上外边距会出现粘连问题, 给上级元素添加overflow:hidden解决此问题

盒子模型之border边框

  • 作用:控制边框效果
  • 赋值方式:
    • border:粗细 样式 颜色; 四个方向添加边框
    • border-left/right/top/bottom:粗细 样式 颜色; 单独某一个方向添加边框
  • border-radius:10px; 设置圆角 值越大越圆

盒子模型之Padding内边距

  • 作用: 控制元素内容的位置
  • 赋值方式: 和外边距类似
    • padding-left/right/top/bottom:10px; 单独某个方向赋值
    • padding:10px; 四个方向赋值
    • padding:10px 20px; 上下和左右赋值
    • padding:10px 20px 30px 40px; 上右下左顺时针赋值
  • 默认情况下给元素添加内边距会影响元素的宽高, 给元素添加box-sizing:border-box;后则不会影响宽高
### CSS 盒子模型详解 CSS盒子模型是网页设计和布局中的核心概念之一。它描述了HTML文档结构化的方式以及如何通过样式控制这些元素的空间分配。 #### 1. 盒子模型的组成部分 每个HTML元素都可以看作是一个矩形盒子,该盒子由以下几个部分组成[^1]: - **内容 (Content)**: 这是盒子的主要区域,用于放置文本或其他媒体内容。 - **内边距 (Padding)**: 它位于内容边缘与边框之间的空白区域,用来增加内容周围的可读空间。 - **边框 (Border)**: 边框围绕着内边距和内容,可以设置不同的宽度、颜色和风格来定义边界线。 - **外边距 (Margin)**: 外边距是在边框之外的一片透明区域,用于分隔相邻的盒子并防止它们相互接触。 #### 2. 盒子模型属性 以下是几个重要的盒子模型相关属性及其功能说明: ##### 2.1 `width` 和 `height` 属性 这两个属性分别设定盒子的内容区宽度和高度。需要注意的是,默认情况下,指定的尺寸仅适用于内容区域而不包括 padding, border 或 margin 的值[^2]。 ##### 2.2 `border` 边框属性 可以通过此属性自定义边界的外观,比如粗细、线条样式(实线、虚线等)以及颜色[^3]。 ##### 2.3 `padding` 内边距 用于调整内部填充量,即内容与其周围边框间的距离。它可以单独应用于上、右、下、左各个方向或者统一应用到所有侧面[^1]。 ##### 2.4 `margin` 外边距 负责管理与其他元素之间外部间距的部分。同样支持多向配置,并且当两个垂直 margins 邻近时会发生折叠现象——取两者较大者作为最终间隔[^2]。 ##### 2.5 盒子模型占位计算 总的实际占用面积等于 content area 加上其四周的所有附加层厚度之和。例如给定一个具有固定 width/height 值为100px 的 div 元素加上额外参数如下所示,则实际渲染出来的大小将是 `(100 + 5 + 5 + 20 + 20)` px × `(100 + 5 + 5 + 20 + 20)` px: ```css div { width: 100px; height: 100px; border: 5px solid black; /* 上下左右均为5像素 */ padding: 20px; /* 各侧均设为20像素 */ } ``` #### 3. box-sizing 属性 为了简化复杂布局的设计过程,引入了一个名为 `box-sizing` 的新特性。默认行为遵循传统标准模式 (`content-box`) ,其中声明的 dimensions 不含 paddings/borders;而另一种选项叫做 alternate model(`border-box`) 可让开发者更直观地操作整体尺寸因为此时所指代的就是整个可视范围内的确切数值. ```css /* 使用 border-box 来改变盒模型的行为方式*/ * { box-sizing: border-box; } ``` 以上便是关于CSS盒子模型的一些基本介绍及常见应用场景下的实现方法论探讨。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值