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的顽固不化辩护。
延伸阅读:
反向推导一个盒子的内容宽度有什么问题吗?不就是做一次加法或减法的问题吗?
nettuts上正好也有一篇写这个的:http://net.tutsplus.com/tutorials/html-css-techniques/quick-tip-did-internet-explorer-get-the-box-model-right/,
css3的话题最近真多啊
不如大家来讨论重新建立一个非css的layout engine吧。顺便把移动设备,LaTex,MathML和化学公式之类的全部统一了。
很赞同您的观点^_^ 支持+1
差点被“IE6 很邪恶,但我爱它的盒子模型”一文作者误导,太大意了,一昧地阅读,没有判断。