CSS盒子模型
AI-摘要
Tianli GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
CSS盒子模型
Mxne盒子模型
CSS 盒子模型本质上是一个盒子,封装周围的 HTML 元素,包括:边框、外边距、内边距和实际内容。
边框(border)
border 可以设置元素边框。边框有三个组成:border-width
、border-style
、border-color
1 | /* |
表格的细线边框
border-collapse
属性控制浏览器绘制 表格边框 的方式。它控制相邻单元格的边框(合并相邻边框)。
1 | /* 表示将相邻边框合并在一起 */ |
边框会影响盒子实际大小
边框会额外增加盒子的实际大小
内边距(padding)
padding
属性设置内边距,即 边框与内容之间的距离。
padding-left
: 左内边距padding-right
: 右内边距padding-top
: 上内边距padding-bottotm
: 下内边距
简写
1 | /* |
padding 会影响盒子实际大小
当盒子已经有了宽度和高度,再指定内边距(前提),会撑大盒子。要保证盒子和效果图一样大,则让 width/height
-多出来的内边距大小即可。
当给盒子指定了 padding
值以后,发生了两件事情:
- 内容和边框有了距离,增加内边距
- padding 值 影响了盒子实际大小
外边距(margin)
margin
属性用于设置外边距,即 控制盒子与盒子之间的距离。
margin-left
: 左外边距margin-right
: 右外边距margin-top
: 上外边距margin-bottotm
: 下外边距
简写,同padding
1 | /* |
水平居中
外边距可以让块级盒子(块级元素) 水平居中,但是必须满足两个条件:
- 盒子 必须指定宽度(width)
- 盒子 左右 的外边距都设置为
auto
1 | .header { |
使 行内元素或行内块元素 水平居中
1 | text-align: center; |
嵌套块元素垂直外边距的塌陷
对于两个嵌套关系的块元素,父元素有上外边距同时子元素也有上外边距,此时父元素会塌陷较大的外边距值。
解决方案
- 为父元素定义上边框
- 为父元素定义上内边距
- 为父元素添加
overflow:hidden
清除内外边距
网页元素很多都带有默认内外边距,而且不同浏览器默认的也不一致,因此在布局前,要先清除网页元素的内外边距。
1 | * { |
圆角边框
border-radius
属性用于设置元素的外边框圆角。
1 | border-radius: length; |
- 参数可以为 数值 或 百分比
- 正方形 变 圆,将数值修改为高度或者宽度的一般即可 或
border-radius: 50%;
- 圆角矩形,将数值设置为
height
的一半就可以做 - 简写规律 同padding和margin
- 可分开写:
border-top-left-radius
、border-top-right-radius
、border-bottom-right-radius
、border-bottom-left-radius
盒子阴影
盒子阴影,使用 box-shadow
属性。
1 | bxo-shadow: h-shadow v-shadow blur spread color inset; |
值 | 描述 |
---|---|
h-shadow | 必需,水平阴影的位置,允许负值 |
v-shadow | 必需,垂直阴影的位置,允许负值 |
blur | 可选,模糊距离(影子的虚实) |
spread | 可选,阴影的尺寸 |
color | 可选,阴影的颜色 |
inset | 可选,将外部阴影改为内部阴影(默认是外部阴影) |
注意:
- 默认是外阴影,但是 不可以写这个单词(outset)
- 盒子阴影 不占空间,不会影响其他盒子排列
文字阴影
text-shadow
属性设置文本阴影。
1 | text-shadow: h-shadow v-shadow blur color; |
值 | 描述 |
---|---|
h-shadow | 必需,水平阴影位置。允许负值。 |
v-shadow | 必须,垂直阴影。允许负值。 |
blur | 可选,模糊距离。 |
color | 可选,阴影颜色。 |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果