微软不擅长坚持并且推广自己制定的标准
举个前端最著名的例子:IE box-sizing 的 border-box 被称为 Quirk mode,W3C 制定的 content-box 却被称为是标准模式。然而做过前端开发的人或者看过像 Bootstrap,Ant-Design 前端 UI 框架源码的同学都知道,现在做前端项目几乎每个人都会在全局 CSS 样式里面写上 - * { box-sizing: border-box }
复制代码 这个所谓的“怪异盒子模型”实际上在网页布局和设计师调整网页元素的尺寸时非常方便,因为无论如何调整 border 和 padding,都不影响元素实际的占位面积,在 HTML 这种流式排版环境下也就不会对位于该排版流之后的元素产生影响。
而且如果大家在现实中见过里面填充了泡沫的快递纸箱,就能明白我们在讲一个箱子的 width 和 height 的时候,通常都是讲箱子外围部分,也就是箱子内部实际可以放物体的空间(width)加泡沫的空间(padding)加箱子本身的厚度(border-width),明明微软的 IE 盒子模型才是最符合人类直觉,却被 W3C 强行说成是怪异模式,结果 W3C 自己搞了一个现代网页布局中没人用的标准。
<hr/>还有就是写 PHP 的时候都可能遇到过 UTF-8 BOM 头部注入导致一些设置 HTTP Header 或者一些必须在输出前执行的操作不被执行,然而事实上微软的 BOM 头部可以有效区分字节端序,满足跨平台要求,并且可以区分 Unicode 编码下的 UTF8 UTF16 UTF32 等,是一个非常好的设计标准,结果强行被开源社区和某些组织认定为是非标准,导致在 Windows 下无法使用记事本修改 PHP 等脚本。
|