前言
今天了解到了IE6以及以下版本的一些兼容性问题。一般情况下,盒子模型分为标准 w3c 盒子模型、IE 盒子模型,以及css3中的 伸缩盒模型。
内边距、边框和外边距都是可选的,默认值是零。但是,许多元素将由用户代理样式表设置外边距和内边距。可以通过将元素的 margin 和 padding 设置为零来覆盖这些浏览器样式。这可以分别进行,也可以使用通用选择器对所有元素进行设置:
| 1 | * { | 
- 在标准盒模型中,width 和 height 指的是内容区域的宽度和高度。增加内边距、边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸。
怪异盒模型(IE 盒子模型)
相较于标准盒模型,IE盒模型最大的不同在于:
- IE 盒子模型的 content 部分包含了 border 和 padding 这两个属性。实例对比例如一个盒子模型如下:1 margin:20px; border:10px; padding:10px; width:200px; height:50px; 1.使用w3c盒子模型解释:1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11盒子模型占用的大小为: 
 宽度:20x2+10x2+10x2+200=280px;
 高度:20x2+10x2+20x2+50=130px;
 盒子的实际大小为:
 宽度:10x2+10x2+200=240px;
 高度:10x2+20x2+50=90px;
 盒子内容的大小为:
 宽度:200px;
 高度:50px;2.使用IE盒子模型解释:结果大致如下:1 
 2
 3
 4
 5
 6
 7盒子模型占用的大小为: 
 宽度:20x2+200=240px;
 高度:20x2+50=90px;
 盒子的实际大小为:
 宽度:200px;
 高度:50px; 改进方法在IE6中,可以通过DTD声明解决这个问题。IE5及以下,经过测试不可以。1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
