为什么IE的盒子模型是错的

ppk曾经说IE的传统盒子模型比W3C的定义好理解,但为什么IE的盒子还是比W3C的糟糕呢?因为IE盒子的定义连IE盒子的支持者自己都搞不清楚。与文中所述相反,IE盒子并不包括margin,而只是纯粹的计算padding与border的占位。为什么IE传统盒子这么烦?因为需要反向推导一个盒子的内容宽度,而浏览器渲染时期望尽快知道内容的宽度。再有,IE传统盒子硬是把微软自己的开发团队都搞晕了,有些bug还穿越出现在标准模式下,哦,你不知道IE6的标准模式使用W3C的盒子定义

支持IE传统盒子的同学,没有为IE5.x开发过的同学,请你考虑这个问题:如今CSS3支持图片border了,使用IE盒子模式,浏览器应该怎么计算内容宽度?CSS3是为设计者方便提供帮助,请不要以box-sizing为借口,为IE5.x的顽固不化辩护。

延伸阅读:

Author: 店长

The Master of BitInn

6 thoughts on “为什么IE的盒子模型是错的”

  1. 反向推导一个盒子的内容宽度有什么问题吗?不就是做一次加法或减法的问题吗?

  2. nettuts上正好也有一篇写这个的:http://net.tutsplus.com/tutorials/html-css-techniques/quick-tip-did-internet-explorer-get-the-box-model-right/,

  3. 不如大家来讨论重新建立一个非css的layout engine吧。顺便把移动设备,LaTex,MathML和化学公式之类的全部统一了。

  4. 差点被“IE6 很邪恶,但我爱它的盒子模型”一文作者误导,太大意了,一昧地阅读,没有判断。

Comments are closed.