首页 > 其他分享 >css盒子模型

css盒子模型

时间:2023-03-19 13:55:38浏览次数:47  
标签:盒子 collapse 模型 边框 width 内边 border css

1、网页布局的本质

网页布局的核心本质: 就是利用 CSS 摆盒子。

网页布局过程:

  1. 先准备好相关的网页元素,网页元素基本都是盒子 Box 。
  2. 利用 CSS 设置好盒子样式,然后摆放到相应位置。
  3. 往盒子里面装内容

2、盒子模型(Box Model)组成

​盒子模型:把 HTML 页面中的布局元素看作是一个矩形的盒子,也就是一个盛装内容的容器。

CSS 盒子模型本质上是一个盒子,封装周围的 HTML 元素,它包括四个部分边框外边距内边距、和 实际内容

3、边框(border)

3.1、边框的使用

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

2、语法:

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

边框样式 border-style 可以设置如下值:

  • none:没有边框即忽略所有边框的宽度(默认值)
  • solid:边框为单实线(最为常用的)
  • dashed:边框为虚线
  • dotted:边框为点线

3、边框的合写分写

边框简写:

 border: 1px solid red;  

边框分开写法:

 border-top: 1px solid red;  /* 只设定上边框, 其余同理 */   

3.2、表格的细线边框

1、border-collapse 属性控制浏览器绘制表格边框的方式。它控制相邻单元格的边框。

2、语法:

 border-collapse:collapse; 

collapse 单词是合并的意思

border-collapse: collapse; 表示相邻边框合并在一起

3.3、边框会影响盒子实际大小

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

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

4、内边距(padding)

4.1、内边距的使用方式

1、padding 属性用于设置内边距,即边框与内容之间的距离。

2、语法:

合写属性:

分写属性:

4.2、内边距会影响盒子实际大小

1、当我们给盒子指定 padding 值之后,发生了 2 件事情:

  • 内容和边框有了距离,添加了内边距。
  • padding影响了盒子实际大小。

2、内边距对盒子大小的影响:

  • 如果盒子已经有了宽度和高度,此时再指定内边框,会撑大盒子。
  • 如果盒子本身没有指定width/height属性, 则此时padding不会撑开盒子大小

3、解决方案:

​如果保证盒子跟效果图大小保持一致,则让 width/height 减去多出来的内边距大小即可。


示例

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div {
                width: 200px; /*改成160*/
                height: 200px; /*改成160*/
                background-color: pink;
                padding: 20px;
            }
        </style>
    </head>
    <body>
        <div>在默认情况下,元素的盒模型会将元素的宽度和高度计算为内容区域的宽度和高度,加上内边距和边框的宽度。也就是说,元素的实际宽度和高度会比指定的宽度和高度大,因为包括了内边距和边框的尺寸。</div>
    </body>
</html>

可以看到整个盒子被撑大了:

解决方法是将盒子的宽高设成160,这是因为左边有20,右边也有20,因此你的width应该是200-40,这样整个盒子就是200*200的了

5、外边距(margin)

5.1、外边距的使用方式

margin 属性用于设置外边距,即控制盒子和盒子之间的距离。

标签:盒子,collapse,模型,边框,width,内边,border,css
From: https://www.cnblogs.com/icbm/p/17232952.html

相关文章