转载自:http://www.cnblogs.com/cchyao/archive/2010/07/12/1775846.html

盒子模型有两种,分别是 ie 盒子模型和标准 w3c 盒子模型。他们对盒子模型的解释各不相同,先来看看我们熟知的标准盒子模型:

从上图可以看到标准 w3c 盒子模型的范围包括 margin、border、padding、content,并且 content 部分不包含其他部分。

  ie 盒子模型

  从上图可以看到 ie 盒子模型的范围也包括 margin、border、padding、content,和标准 w3c 盒子模型不同的是:ie 盒子模型的 content 部分包含了 border 和 pading。

   例:一个盒子的 margin 为 20px,border 为 1px,padding 为 10px,content 的宽为 200px、高为 50px,假如用标准 w3c 盒子模型解释,那么这个盒子需要占据的位置为:宽 20*2+1*2+10*2+200=262px、高 20*2+1*2*10*2+50=112px,盒子的实际大小为:宽 1*2+10*2+200=222px、高 1*2+10*2+50=72px;假如用ie 盒子模型,那么这个盒子需要占据的位置为:宽 20*2+200=240px、高 20*2+50=70px,盒子的实际大小为:宽 200px、高 50px。

  那应该选择哪中盒子模型呢?当然是“标准 w3c 盒子模型”了。怎么样才算是选择了“标准 w3c 盒子模型”呢?很简单,就是在网页的顶部加上 doctype 声明。假如不加 doctype 声明,那么各个浏览器会根据自己的行为去理解网页,即 ie 浏览器会采用 ie 盒子模型去解释你的盒子,而 ff 会采用标准 w3c 盒子模型解释你的盒子,所以网页在不同的浏览器中就显示的不一样了。反之,假如加上了 doctype 声明,那么所有浏览器都会采用标准 w3c 盒子模型去解释你的盒子,网页就能在各个浏览器中显示一致了。

  再用 jquery 做的例子来证实一下。

<html>
<head>
<title>你用的盒子模型是?</title>
<script language="javascript" src="jquery.min.js"></script>
<script language="javascript">var sbox = $.boxmodel ? "标准w3c":"ie";document.write("您的页面目前支持:"+sbox+"盒子模型");
</script>
</head>
<body>
</body>
</html>

上面的代码没有加上 doctype 声明,在 ie 浏览器中显示“ie盒子模型”,在 ff 浏览器中显示“标准 w3c 盒子模型”。

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html>
<head>
<title>你用的盒子模型是标准w3c盒子模型</title>
<script language="javascript" src="jquery.min.js"></script>
<script language="javascript">var sbox = $.boxmodel ? "标准w3c":"ie";document.write("您的页面目前支持:"+sbox+"盒子模型");
</script>
</head>
<body>
</body>
</html>

代码2 与代码1 唯一的不同的就是顶部加了 doctype 声明。在所有浏览器中都显示“标准 w3c 盒子模型”。

所以为了让网页能兼容各个浏览器,让我们用标准 w3c 盒子模型。

转载于:https://www.cnblogs.com/JoannaQ/archive/2012/09/15/2686075.html

标准W3C盒子模型和IE盒子模型CSS布局经典盒子模型(转)相关推荐

  1. 关于css盒子模型和BFC的理解

    CSS盒子模型 包含元素内容(content).内边距(padding).边框(border).外边距(margin) 一般元素总宽度 = element的width+padding的左右边距+mar ...

  2. HTML与CSS基础(五)—— CSS布局(盒子模型)、PxCook使用

    目标 能够认识 盒子模型 的组成部分 能够掌握盒子模型的 边框.内边距.外边距 的作用及简写形式 能够计算盒子的 实际大小 能够了解 外边距折叠现象,并知道如何解决 盒子塌陷问题 一.PxCook的基 ...

  3. 【CSS】盒子边框 ① ( 网页布局本质 | 盒子模型 | 盒子边框 Border | border-width 宽度 | border-style 边框样式 | 边框颜色 | 边框设置综合写法 )

    文章目录 一.网页布局本质 二.盒子模型 三.盒子边框 Border 1.CSS 2.0 文档查询 2.边框设置语法 3.边框设置综合写法 一.网页布局本质 构建一个网页 , 首先 , 创建盒子模型 ...

  4. CSS布局(二) 盒子模型属性

    盒子模型的属性 宽高width/height 在CSS中,可以对任何块级元素设置显式高度. 如果指定高度大于显示内容所需高度,多余的高度会产生一个视觉效果,就好像有额外的内边距一样: 如果指定高度小于 ...

  5. CSS盒子模型/页面布局

    1.盒子模型 页面布局要学习三大核心,盒子模型,浮动和定位.学好盒子模型对我们布局页面帮助很大! 1.1看透网页布局的本质 网页布局过程: 先准备好相关的网页元素,网页元素基本都是盒子 利用CSS设置 ...

  6. html怎么创建盒子,html布局(盒子)

    在body里面放置两个盒子,里面盒子设置margin-top,外层盒子生效? 在里面盒子上面加一个块元素,设置高度 表单 form action="地址" method=" ...

  7. Web标准概念--摘抄《CSS布局实录》

    前言 对于日常的很多事情,我们并没有注意到这背后都有着一个隐藏的"因素"在起作用,这个因素就是:标准. 生活中各行各业都有着自己相应的标准与规范,标准可以方便交流.促进协作.提高效 ...

  8. 盒子模型(W3C盒子和IE盒子)

    盒子模型(W3C盒子和IE盒子) 盒子模型封装周围的 HTML 元素,包括:margin,border,padding和实际内容. 两种盒子: border-box IE盒子模型 .content-b ...

  9. html盒子标准模型,CSS标准盒模型与IE盒子模型以及弹性盒模型

    CSS2.1中提出了盒模型的概念,盒模型高度提炼了所有元素的基本特征,即标准盒模型,CSS3中进一步扩展,提出了弹性盒模型的概念 什么是盒模型,我们可以先直观的看一个东西 打开Chrome浏览器,F1 ...

最新文章

  1. 【OpenCV】图像代数运算:平均值去噪,减去背景
  2. 服务器文件储存,文件储存服务器
  3. 一段java并发编程代码
  4. 12bit灰度图像映射到8bit显示及python 实现
  5. 被学校辞退、拒绝FB后:语音识别大牛Povey确认兼职北京初创公司,称主业还选中国...
  6. 即时通讯 我穿上球鞋
  7. 动态滤波网络论文解读
  8. JS对象 字符串分割 split() 方法将字符串分割为字符串数组,并返回此数组。 语法: stringObject.split(separator,limit)...
  9. java实现学生财务管理_基于jsp的学生社团财务管理-JavaEE实现学生社团财务管理 - java项目源码...
  10. 关于||逻辑或运算符运算符
  11. uReport2报表工具的基础使用及注意事项
  12. 现代信号处理 张贤达_信号处理领域著名科学家、清华大学张贤达教授逝世,享年 74岁...
  13. 什么是天气预报 API 接口?如何获取天气预报 API?
  14. NKOI 3590 循环赛日程表
  15. oracle存储过程中游标定义
  16. 大学 校园网登陆界面跳转不出来,没有跳转怎么办 原理解析以及解决方案
  17. 2021年 江南大学研究生考试 算法与程序设计 题目
  18. 2020年新版Java学习路线图最全更新!囊括史上最全面104个知识点
  19. 电网交换机IEC61850协议 MMS介绍
  20. 你真的了解 基本的SELECT语句吗?

热门文章

  1. 基于脑电图的情绪识别BCI应用于DOC患者
  2. 嬴彻科技完成L4级重卡无人驾驶路测
  3. 复旦教授发现400+安卓漏洞,最严重可使手机变砖,谷“鸽”16个月后才修复
  4. 花式云毕业:《我的世界》建大学,日本机器人替身领证 | 网友:搞点阳间的东西...
  5. 一个算法同时解决两大CV任务,让目标检测和实例分割互相帮助,地平线实习生论文被AAAI 2020收录...
  6. 细思极恐!只需54块钱,你也能让AI伪造一系列联合国发言
  7. 深入理解ByteBuffer
  8. 转换Word文档为PDF文件
  9. CSS实现某元素hover时 所有兄弟节点样式改变
  10. python 实现分治法的几个例子