盒子模型-怪异模式和标准模式

首先,两种模式可以利用box-sizing属性进行自行选择:

标准模式:box-sizing:content-box;

怪异模式:box-sizing:border-box;

两种模式的区别:

标准模式会被设置的padding撑开,而怪异模式则相当于将盒子的大小固定好,再将内容装入盒子。盒子的大小并不会被padding所撑开。

例:

.box{
box-sizing:border-box; //没有添加时,按照标准模式计算, 添加时按照怪异模式解析
width:200px;
height:200px;
border:2px solid black;
padding:50px;
margin:50px;
}

标准模式:盒子总宽度/高度 = 内容区宽度 /高度+padding+border + margin。效果:


1.png

怪异模式:盒子总宽度/高度=width/height+margin。效果:


2.png

前言

[摘自w3c]http://www.w3school.com.cn/css/css_boxmodel.asp

  • 盒模型分为 标准 w3c 盒子模型、IE 盒子模型,以及css3中的 伸缩盒模型。
  • 注意区分:盒子模型的宽高、盒子的实际宽高、盒子内容content的宽高
  • 我们一般理解的盒子模型是标准盒子模型
  • 我们在DOM操作中一般使用的是盒子的实际大小,margin 不参与计算

标准盒模型(w3c 盒子模型)

CSS 框模型 (Box Model) 规定了元素框处理元素内容、内边距、边框 和 外边距 的方式,其模型图如下:

1.png

内边距、边框和外边距都是可选的,默认值是零。但是,许多元素将由用户代理样式表设置外边距和内边距。可以通过将元素的 margin 和 padding 设置为零来覆盖这些浏览器样式。这可以分别进行,也可以使用通用选择器对所有元素进行设置:

* {
  margin: 0;
  padding: 0;
}

在标准盒模型中,width 和 height 指的是内容区域的宽度和高度。增加内边距、边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸。

w3c中的盒子模型占用的大小:margin + border + padding + width/height;
width: margin2 + border2 + padding2 + width;
height: margin
2 + border2 + padding2 + height;

w3c中盒子模型的实际大小:border + padding + width/height;
width: border2 + padding2 + width;
height: border2 + padding2 + height;

w3c中盒子模型的内容区域的大小:width/height
width: width;
height: height;

怪异盒模型(IE 盒子模型)

相较于标准盒模型,IE盒模型最大的不同在于:
IE 盒子模型的 content 部分包含了 border 和 padding 这两个属性。

IE 盒子模型占用的宽度:margin + content-width/height;
width: margin2 + width;
height: margin
2 + height;

IE 盒子模型的实际大小:content-width/height
width: width;
height: height;

实例对比

例如一个盒子模型如下:
margin:20px; border:10px; padding:10px; width:200px; height:50px;

1.使用w3c盒子模型解释:
  • 盒子模型占用的大小为:
    宽度:20x2+10x2+10x2+200=280px;
    高度:20x2+10x2+20x2+50=130px;
  • 盒子的实际大小为:
    宽度:10x2+10x2+200=240px;
    高度:10x2+20x2+50=90px;
  • 盒子内容的大小为:
    宽度:200px;
    高度:50px;
2.使用IE盒子模型解释:
  • 盒子模型占用的大小为:
    宽度:20x2+200=240px;
    高度:20x2+50=90px;
  • 盒子的实际大小为:
    宽度:200px;
    高度:50px;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,693评论 1 92
  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 10,174评论 5 15
  • 一、display属性值总结。 1、display:block block元素会独占一行。默认情况下,blo...
    iam梦的的阅读 5,151评论 0 0
  • 尊敬的各位领导,同学们: 大家好! 我是XXX,我演讲的题目是《挥洒青春激情 争当八桂先锋》。雷锋同志曾经写道:“...
    阳文政阅读 4,442评论 0 3
  • 当黄老师说出让我放下期待的时候,我哭了,内心很失望,本以为我的努力都是要朝着我所期待的方向发展,却让我放下期待,也...
    daicy_522阅读 2,635评论 0 1

友情链接更多精彩内容