blog/docs/code/html/css-box.md

99 lines
3.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: CSS盒子模型
date: 2022-01-08 22:21:36
tags:
- CSS
categories: CSS
author: Anges黎梦
---
## 盒子模型解释
元素在页面中显示成一个方块类似一个盒子CSS盒子模型就是使用现实中盒子来做比喻
帮助我们设置元素对应的样式。盒子模型示意图如下:
![](https://limeng-blog.oss-cn-hangzhou.aliyuncs.com/css/view01.jpg)
**把元素叫做盒子,设置对应的样式分别为:**
- 盒子的宽度(width)
- 盒子的高度(height)
- 盒子的边框(border)
- 盒子内的内容和边框之间的间距(padding)
- 盒子与盒子之间的间距(margin)。
### 设置宽高
```html
width:200px; /* 设置盒子的宽度,此宽度是指盒子内容的宽度,不是盒子整体宽度(难点) */
height:200px; /* 设置盒子的高度,此高度是指盒子内容的高度,不是盒子整体高度(难点) */
```
### 设置边框
设置一边的边框,比如顶部边框,可以按如下设置:
```html
border-top:10px solid red;
```
其中10px表示线框的粗细solid表示线性常用的有
solid(实线) 、dashed(虚线)dotted(点线)red表示线的颜色是红色。
设置其它三个边的方法和上面一样,把上面的'top'换成'left'就是设置左边,
换成'right'就是设置右边,换 成'bottom'就是设置底边。
四个边如果设置一样,可以将四个边的设置合并成一句:
```html
border:10px solid red;
```
### 设置内间距padding
设置盒子四边的内间距,可设置如下:
```html
padding-top20px; /* 设置顶部内间距20px */
padding-left:30px; /* 设置左边内间距30px */
padding-right:40px; /* 设置右边内间距40px */
padding-bottom:50px; /* 设置底部内间距50px */
```
上面的设置可以简写如下:
```html
padding20px 40px 50px 30px;
/* 四个值按照顺时针方向,分别设置的是 上 右 下 左 四个方向的内边距值。 */
```
padding后面还可以跟3个值2个值和1个值它们分别设置的项目如下
```html
padding20px 40px 50px; /* 设置顶部内边距为20px左右内边距为40px底部内边距为50px */
padding20px 40px; /* 设置上下内边距为20px左右内边距为40px*/
padding20px; /* 设置四边内边距为20px */
```
### 设置外间距margin
外边距的设置方法和padding的设置方法相同将上面设置项中的'padding'换成'margin'就是外边距设置方法。
盒子的真实尺寸(难点)
盒子的width和height值固定时如果盒子增加border和padding盒子整体的尺寸会变大所以盒子的真实尺寸 为:
盒子宽度 = width + padding左右 + border左右
盒子高度 = height + padding上下 + border上下
可以通过盒子模型的原理,制作下面的盒子:
![](https://limeng-blog.oss-cn-hangzhou.aliyuncs.com/css/box_practice.jpg)
### chrome开发者工具
chrome开发者工具可以辅助开发可以迅速查看元素的结构样式以及盒子模型结构和尺寸。