标准盒子模型与怪异盒子模型

通俗的讲,盒模型是css布局的基础,它的作用是规定了网页元素在网页上如何显示以及元素之间的相互关系,css定义所有的元素都可以拥有像盒子一样的外形和平面空间。即都包含内容区、补白(填充)、边框、边界(外边距)。

在这里插入图片描述

上图很明白的就可以看出来,盒模型由以下几部分组成:

内容区(content):元素的宽和高
补白(填充)(padding):元素内容和外边缘之间的空间
边框(border):盒子的外边缘
边界(外边距)(margin):盒子外边缘以外的空间

这其实就是一个标准的盒模型。

那么接下来,我们再来看看什么是怪异盒模型吧。下图所示:
在这里插入图片描述
可以明显的看出,怪异盒模型的组成部分则只划分为了两个部分,分别为:

width/height(元素的内容宽或高):内容区(content)、补白(填充)(padding)以及边框(border)的总和

边界(外边距)(margin):盒子外边缘以外的空间

不难看出,怪异盒模型的一个构成形式为元素的宽高包含了填充以及边框所占有的空间,也就是说当我们页面元素为怪异盒模型的时候,给予元素padding或者border属性之后并不会改变元素原有宽高的值,而如果我们给标准盒模型的元素添加padding或者border属性之后,元素最终的宽高值会发生变化,盒子会变大,这也就是标准盒模型与怪异盒模型区别所在。(下面通过案例以及图片给与对比加深理解)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            .box{
                width:300px;
                height:300px;
                background:#f00;
                border:10px solid #000;
                padding:20px;
                box-sizing: border-box;/* 转换成怪异盒模型 该属性下面有说明*/
            }
        </style>
    </head>
    <body>
        <div class="box"></div>
    </body>
</html>

标准盒模型的呈现形式为:
在这里插入图片描述
图片上可以看到,div的值由原始的300加上padding和border的值最后变为了360x360。

怪异盒模型的呈现形式为:
在这里插入图片描述
可以看到,加上padding和border值之后,div的宽度和高度依旧为300x300不变,填充以及边框属性值都包含在了元素的体内。

相信看到这里,大家应该能够理解他们的不同之处了吧?

PS : 我们可以通过CSS3属性进行盒模型之间的转换操作,下面是它的一个属性设置:

1 border-sizing: border-box/* 表示怪异盒模型 */
2 border-sizing: content-box/* 表示标准盒模型 */

通过设置该属性,我们可以转换元素的盒模型进行自己想要的效果呈现,当然我们常用的一些元素中也有自带怪异盒模型属性的,例如我们大家熟知的页面提交按钮,还有表格table,其实他们都是属于怪异盒模型的,所以在以后的工作中,应该明白为什么明明设置了填充元素高度依旧不够的缘故了吧?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值