lxmoe的css学习笔记(九)

107 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第18天,点击查看活动详情

接下来我们继续关于盒子模型吧,在网页中有很好的展示。

盒子模型

盒子模型组成

怎么来理解盒子模型呢?我们可以把HTML的元素看成是一个矩形的盒子,也就是一个盛装内容的容器,CSS盒子模型本质上就是一个盒子,封装周围的HTML元素,它包括:内边距外边距边框实际内容

边框

border可以设置元素的边框。边框有三部分组成 :边框宽度、边框样式、边框颜色

基本语法如下:

border:border-width|border-style|border-color

例如:

border:1px solid red;

这样我们就设置了一个边框粗为1px,实线,为红色的边框。 元素值没有固定顺序,我们可以随意调换顺序。

  • border-width:定义边框粗细,单位是px。
  • border-style:定义边框样式。常用的参数有:solid(实线)、dashed(虚线)、dotted(点线)
  • border-color :定义边框颜色

border-collapse属性可以控制浏览器绘制表格边框的方式。它能控制相邻单元格的边框。 基本语法如下:

border-collapse:collapse;

实际上,边框会额外增加盒子的实际大小,因此我们有两种方法来解决。

  • 测量盒子大小的时候,不量边框。
  • 如果测量的时候包含了边框,则需要height/width减去边框宽度

内边距

padding属性用于设置内边距,即边框与内容之间的距离。 相关属性有:

  • padding-left:左内边距
  • padding-right:右内边距
  • padding-top:上内边距
  • padding-bottom:下内边距

padding属性可以有一到四个值。

我们在四个例子中来感受一下:

padding:5px;
1个值,代表上下左右都有5像素内边距

padding5px 10px2个值,代表上下边距是5像素,左右内边距是10像素

padding5px 10px 15px;
3个值,代表上内边距是5像素,左右边距10像素,下内边距15像素

padding5px 10px 20px 30px;
4个值,代表上内边距是5像素,右是10px,下是20px,左是30px

当我们给盒子指定padding值之后,内容和边框有了距离,添加了内边距,padding影响了盒子实际大小,如果说我们想要保证盒子跟效果图大小保持一致,则让width/height减去多出来的内边距大小即可。

如果盒子本身没有指定width/height属性,则padding不会撑开盒子大小。