【实用】IE浏览器兼容性适配点总结

在web项目进行浏览器兼容性测试(更多相关内容:带你悉数那些不为人知的小概率BUG事件),论坑最多的,非IE系列浏览器莫属,且IE8是我们组开发的心中的痛,一提到有兼容性bug,第一反应:是不是IE的?卧槽,又是IE8!

由于项目产品需要,管理后台和官网等web项目都需要兼容到IE浏览器,兼容到IE8以上并且是含IE8,所以每次有新功能尤其关注的就是IE系列浏览器。

【实用】IE浏览器兼容性适配点总结_第1张图片

一般情况下其他主流浏览器都问题不大,而IE浏览器不同版本也有差异,曾经就掉过坑,以为IE8测完一遍后,其他9,10,11问题应该不会很大,可以放心点,时间上评估少点,结果后来发现每个IE浏览器版本发现的bug都不一样,出现的地方都不一样,让人非常忧伤。

虽然尝试用浏览器兼容性工具辅助如IEtester,但效果并不高。为了以后能更好地在IE浏览器进行测试,所以网上看了相关资料,了解IE不同版本的兼容性测试点,将IE浏览器不同版本的兼容性问题进行了整理。

IE浏览器自从IE9开始后,做了很大的改动,更符合了W3C标准,这也是为啥IE8比其他问题要更多的原因了。

其中IE11已更完善,像IE11中就内置了IE7-IE10的浏览器模式(按F12打开开发者工具可见),方便开发进行更低版本的调试。

如下整理IE9-IE11的变更点:

1、IE9
(1)IE9 的 User-agent 字符串更改
(2)验证 JavaScript. 框架是否支持最新版本
(3)空格保存和 DOM
(4)当 Window 对象属性处于孤立状态时将被删除
(5)XSLT 兼容性更改
(6)不再支持 Arguments.caller
(7)数组索引处理
(8)二进制行为和 XML 架构
(9)二进制行为不再自动绑定
(10)内容属性和 DOM 属性
(11)CreateElement 不再支持尖括号
(12)动态 VML 模式更改
(13)枚举 JavaScript. 属性
(14)泰语和东亚文字的字体大小
(15)函数指针方法调用
(16)从 DOM 删除 IFrame. 资源后,可释放这些资源
(17)调用的间接 eval 函数的作用域现在为全局
(18)不再支持传统 DOM 事件
(19)数学精确度和 SSE2 差异
(20)MIME 类型和纯文本内容
(21)MIME 类型和样式表
(22)本机 XML 对象类型和传统网站
(23)NULL 协议返回值
(24)对象元素回退适用于 DOM
(25)克隆重叠元素
(26)减少 MIME 类型的安全风险
(27)圆角和传统版渐变筛选器
(28)脚本元素和事件执行
(29)样式表标题为只读
(30)表对象模型一致性
(31)文本布局和自然指标

2、IE10
(1)HTML5 Quirks 模式
(2)IE10 user-agent 字符串
(3)不再支持 DX 筛选器
(4)不再支持元素行为和 HTC
(5)ASP.NET 无法检测
(6)面向 Web 开发人员的浏览
(7)不再支持条件注释
(8)自定义下载体验
(9)使用 JavaScript 处理夏令时
(10)插件和 ActiveX 在 Windows 8 和 Windows 8.1 中受支持
(11)拼写检查和自动更正支持
(12)不再支持 VML
(13)不再支持 XML 数据岛

3、IE11
(1)Web 开发人员可获取 W3C DOM4 突变观察者的支持,从而帮助监视需要观察和跟踪哪些 DOM 突变
(2)已弃用文档模式
(3)Internet 区域不再支持 CSS 表达式
(4)复选框和单选按钮布局默认值
(5)跨浏览器插件检测
(6)默认字体更改
(7)默认情况下启用增强保护模式 (EPM)
(8)弹性框(“Flexbox”)布局更新
(9)突变观察者
(10)指针事件更新
(11)伪装点击测试在 IE11 边缘模式中已禁用
(12)边缘模式不再支持 VBScript
(13)Window 事件行为已发生更改

以上是对不同版本的变更做个整理,对于Web开发的前端来说,了解不同版本的变化尤其重要,而对于我们Web测试来说,如果也能多去了解根源的变化,相信也能有更好地帮助,虽然我也只是在浏览器兼容性测试摸索中,还没有找到最佳实践。

文章转自:http://qa.blog.163.com/blog/static/1901470022016111693828431/

了解更多相关内容请戳:「秘籍」软件测试进阶学习指南!

你可能感兴趣的:(【实用】IE浏览器兼容性适配点总结)