因为这是一个CSS3属性,且长期以来都必须用vendor前缀。
border-box实际上就是IE quirk mode下的box model。而box-sizing属性也是为了兼容这一模型在FF 1.0中就被加入了。其他浏览器,Safari从3.0开始,Chrome从1.0开始就支持了。
讽刺的是,问题居然还是出在IE上。IE6和7的标准模式下没有box-sizing。这意味着你的网页如果要使用box-sizing: border-box,必须使用quirk mode。
calc() 终于已经得到了广泛支持,box-sizing在避免无意义标签方面的不可替代性就随之消失了。考虑到box-sizing的一些实现上的bug(比如 FF和IE在getComputedStyle得到的width/height是按照标准模式计算出来的),以及混合多种box model在开发中的理解成本(要随时记得width/height的表现取决于box-sizing的计算值——其实left/top也有类似的问题, 调试的时候你得确定position的计算值),使用box-sizing的好处就不多了。