在程序员的眼里,万恶的IE6的结束对他们而言是一种解脱,IE7首次开始完整支持W3C标准,从此之后IE的标准化之路就开始越走越顺,以下总结了IE7以后各版本的更新内容,和各版本的差别,作为Web开发人员解决浏览器兼容性问题的参考。
IE7更新
- 解决了IE6的一个float bug,见http://www.positioniseverything.net/explorer/peekaboo.html
- 增强了CSS选择器支持
- 内置AJAX
- 透明PNG图片支持
微软官方更新说明http://www.microsoft.com/china/msdn/library/webservices/WebApp/IE7_RevGd.mspx?mfr=true
IE8更新
- 解决了所有浮动bug(可能是所有CSS Bug都解决了),完全支持CSS2.1规则和选择器(这个是亮点,至少在CSS上完全符合W3C标准了) 具体见http://msdn.microsoft.com/library/cc304082.aspx
- 去掉了CSS 表达式 使用 -ms-厂商前缀表示IE专有属性,这一点向webkit和firefox学习了,值得表杨
- 修正了一系列DOM错误,更符合标准,但并没有新增支持 如getElementById的时候ID区分大小写,不会错把Name当ID,详细列表见 http://msdn.microsoft.com/library/dd433047.aspx
- 支持link标签的charset属性 AJAX支持增强
- 支持HTML5中的本地存储(挺先进的
- 本地JSON对象支持(这个也挺先进)
- 增加UA兼容模式
- 增加了almost Stardards渲染模式
- 然而IE8仍然没有实现DOM L2,DOM L3和DOM L2 和 L3 事件处理(包括冒泡模型)的完整支持
微软官方更新说明 http://msdn.microsoft.com/library/cc288472%28VS.85%29.aspx#html
IE9更新
- 实现DOM L2,DOM L3和DOM L2 和 L3 事件处理(包括冒泡模型)的完整支持
- HTML5和CSS3支持 opacity透明属性的支持
- CSS3 2-D transforms
- Canvas,video之类,等等
- Web 开放字体格式 (WOFF) 的支持 SVG原生支持 一系列JS Bug的修复(Jscript更符合ECMAScript标准 见http://blogs.msdn.com/b/ie/archive/2010/06/25/enhanced-scripting-in-ie9-ecmascript-5-support-and-more.aspx 和http://blogs.msdn.com/b/ie/archive/2010/03/26/standards-documentation-for-ie7-and-ie8.aspx
- ECMAScript 5支持 在DOM中空白字符也作为独立的文本节点以保持与其它浏览器一致 见http://www.w3school.com.cn/xmldom/dom_mozilla_vs_ie.asp 未知标签也能使用CSS样式 支持application/xhtml+xml的MIME
微软更新说明 http://msdn.microsoft.com/zh-cn/ie/ff468705
IE10更新
- ECMAScript 5 Strict 模式支持 HTML5和CSS3增强 CSS3 3-D transforms(需要-ms-前缀,因为W3C还未定稿)
- Websocket,webwork,file api等等
- SVG改进和增强 SVG滤境
- DOM增强 大多是带ms前缀的增强(也是就IE专有的)
- 如触屏操作,手势事件,等等
- 不再支持IE10的UA兼容设置(因为从IE9开始已经完全符合W3C标准),但仍支持IE9和之前的UA兼容设置
概括的说IE7只是对IE6的小小增强,IE8完全支持CSS2.1和选择器,DOM操作更符合W3C标准,但DOM支持仍不完整IE9 完全支持DOM L1,DOM L2,Jscript更符合标准,ECMAScript5支持,HTML5,CSS3支持,SVG支持。