经典新手入门CSS盒子模型,超详细


前言

—————————————————————————————
我在HTML中,我学习了一个很重要的理论:块元素和行内元素。在这一节中,我将介绍CSS中极其重要的一个理论——CSS盒子模型。
—————————————————————————————

一、盒子模型是什么?

在“CSS盒子模型”理论中,页面中的所有元素都可以看成一个盒子,并且占据着一定的页面空间。如图所示为一个CSS盒子模型的具体结构。
在这里插入图片描述
一个页面由很多这样的盒子组成,这些盒子之间会互相影响,因此掌握盒子模型需要从两个方面来理解:一是理解单独一个盒子的内部结构(往往是padding);二是理解多个盒子之间的相互关系(往往是margin)。

每个元素都看成一个盒子,盒子模型是由四个属性组成的:content(内容)、padding(内边距)、margin(外边距)和border(边框)。此外,在盒子模型中,还有宽度width和高度height两大辅助性属性。记住,所有的元素都可以看成一个盒子。

从上面我们可以知道,盒子模型的组成部分有4个,如下表所示。

属性说明
content内容,可以是文本或图片
padding内边距,用于定义内容与边框之间的距离
margin外边距,用于定义盒子与盒子之间的距离
border边框,用于定义元素的边框

二、盒子模型的内容

1.宽高

元素的宽度(width)和高度(height)是针对内容区而言的。
如下面代码展示:

/*代码1*/
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            width: 100px;
            height: 100px;
            border: 1px solid red;
            padding: 50px;
        }
    </style>
</head>

<body>
    <div>
        哈哈
    </div>
</body>

</html>

在浏览器中展示如下图所示:
在这里插入图片描述
点击鼠标右键查看网页源代码会发现宽高只和内容有关而和padding无关
在这里插入图片描述
另外,只有块元素才可以设置width和height,行内元素是无法设置width和height的。行内元素想要设置需要使用display将其转换成块元素

2.边框

在CSS盒子模型中,边框跟我们之前学过的边框是一样的。

边框属性说明
border-width边框的宽度
border-style边框类型
border-color边框颜色

代码如下(示例):

/*代码1*/
border-width:1px;
border-style:solid;
border-color:gray;
/*代码2*/
border:1px solid gray;

对于border属性,更多使用的是简写形式,也就是代码二。

3.内边距padding

内边距padding,又常常被称为“补白”,它指的是内容区到边框之间的那一部分。内边距都是在边框内部的。
内边距分为4个方向:padding-top、padding-right、padding-bottom、padding-left。
跟border属性一样,padding属性也有简写形式。在实际开发中,我们往往使用简写形式,因为这样开发效率更高,记忆方法按顺时针记忆就可以了。

代码如下(示例):

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
    <style type="text/css">
        div
        {
            display:inline-block;   /*将块元素转换为inline-block元素,让其无法独占一行*/
            padding-top:20px;
            padding-right:40px;
            padding-bottom:60px;
            padding-left:80px;
            border:2px solid red;
            background-color:#FFDEAD;
        }
    </style>
</head>
<body>
    <div>哈哈</div>
</body>
</html>

如图:
在这里插入图片描述

4.外边距margin

padding和margin的区别在于:padding体现的是元素的“内部结构”,而margin体现的是元素之间的相互关系。
也就是盒子与盒子之间的关系
分为兄弟盒子之间的,与父子盒子之间的。
兄弟之间的就是两个并列关系,如代码,如图

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <title></title>
    <style type="text/css">
        .class {
            padding-top: 20px;
            padding-right: 40px;
            padding-bottom: 60px;
            padding-left: 80px;
            border: 2px solid red;
            background-color: #FFDEAD;
            margin: 0 0 100px 0;
        }

        .class1 {
            padding-top: 20px;
            padding-right: 40px;
            padding-bottom: 60px;
            padding-left: 80px;
            border: 2px solid red;
            background-color: #FFDEAD;
        }
    </style>
</head>

<body>
    <div class="class">
        哈哈
    </div>
    <div class="class1">
        嘻嘻嘻
    </div>
</body>

</html>

在这里插入图片描述
两个盒子之间有一段距离,可以用外边距来掌控。

而父子盒子就是
在这里插入图片描述
相当于包含关系,可以由一个大盒子装着几个小盒子。


5.盒子阴影

box-shadow:后按顺序接下面的属性

属性说明
水平阴影设置像素
垂直阴影设置像素
模糊距离设置像素
阴影尺寸设置像素
阴影颜色设置颜色
内外部阴影转换inset是转为内部阴影,不输入它就是默认外部阴影

6.盒子圆角边框

语法是:border-radius:左上,右上,右下,左下。
如果想要设置成一个圆形,则只需要输入一个50%百分数即可完成。

总结

盒子模型在网页布局中有巨大的作用,可以让初入前端的我对网页布局有一个更深的印象,同时在看别人的网页时,自己也能够从盒子布局的角度去剖析网页。
共勉!!!!!!!!!!!!

在这里插入图片描述

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值