IE浏览器版本判断之 Trident (排版引擎)

最近因为项目需要,发现IE 8及其以下版本对下拉框的兼容性不是很好,有时会因为下拉框文字太多而显示不全,但是IE9、10却没有以上问题。又由于IE浏览器自己的“浏览器模式”和”文本模式“,所以很多通过navigator.userAgent中是否包含”MSIE X.0“的字符串来判断当前IE版本变的很不靠谱,但是navigator.userAgent的信息还是很有用的,其中”Trident/x.0“就是一个有用的信息,我们可以通过这些信息来判断当前ie版本,而不受其各种模式的影响,现对其介绍如下:
Trident(又称为MSHTML、IE内核),是微软的视窗操作系统(Windows)搭载的网页浏览器—Internet Explorer的排版引擎的名称,它的第一个版本随着1997年10月Internet Explorer第四版发布,之后不断的加入新的技术并随着新版本的Internet Explorer发布。在Internet Explorer第七版中,微软对Trident排版引擎做了的重大的变动,除了加入新的技术之外,并增加对网页标准的支持。尽管这些变动已经在相当大的程度上落后了其它的排版引擎,如Gecko、WebCore、KHTML、Webkit及Presto。
Trident引擎被设计成一个软件组件(模块),使得其他软件开发人员很容易的将网页浏览的功能加到他们自行开发的应用程序里。微软提出了一个称为组件对象模型(COM)的软件接口架构。供其它支持的组件对象模型开发环境的应用程序(如:C++及.NET)访问及编辑网页。例如,由C++所撰写的程序可以加入浏览器控件里,并通过Trident引擎访问当前显示在浏览器上的网页内容及网页的各种元素的值,从浏览器控件触发的事件亦可被程序截取并进行处理。Trident引擎所提供的所有库可以通过与mshtml.dll这个文件的链接而达成撰写程序时所需要的功能。
除此之外,微软还有另一个网页浏览器排版引擎,称为Tasman,它是使用在“Internet Explorer for Mac”的排版引擎。相较于Trident,Tasman引擎对网页标准有较佳的支持。与普遍的看法相反的是,微软已经停止了Mac版本的Internet Explorer的开发,但Tasman的开发仍旧持续,新版本的Tasman引擎仍被应用在一些微软产品上,例如Office for Mac。

版本

Trident版本 MSHTML.dll版本 Internet Explorer版本 更新
unversioned4.0.x4首发
unversioned5.0.x5增加对CSS 1的支持及改变对CSS 2的渲染
unversioned5.5.x5.5修正部份CSS的排版控制
unversioned6.0.x6修正box model[1]的错误及新增quirks mode[2]的切换功能,以增加对DTD的支持
unversioned7.0.x7修正部分CSS排版处理上的错误以及增加对PNGalpha通道(半透明)的支持
4.0 [3]8.0.x8第一个通过Acid2测试的版本[4]
5.09.0.x9首次支持HTML5SVGCSS3及采用新的JavaScript引擎。另外,首次加入利用DirectX中的硬件加速改善网络应用程序的性能。
6.010.0.x10支持CSS3多栏式排版、格子对齐、浮动式区块排版、渐变以及ECMA5严格模式。
7.011.0.x11支持WebGLSPDY。增强对HTML5标准的支持。性能提升。

Internet Explorer 8是第一个在用户代理 (User agent) 字符串中包含Trident排版引擎的版本。在此之前,Trident排版引擎都没有作独立发布。

基于Trident技术的应用程序
另见::en:Internet Explorer shell
除了Internet Explorer第四版以后的版本使用Trident排版引擎之外,还有其它的应用程序也使用了Trident排版引擎所提供的技术:



微软视窗操作系统内的应用程序
从Windows 98到Windows XP及Windows Server 2003所有版本的Windows Explorer。(Windows Vista则使用不同的技术)
Windows 98及其后续所有版本的视窗操作系统内的Windows帮助程序。


以Trident为核心的浏览器
Avant Browser(前身为IeOpera)
Maxthon(前身为MyIE3.2、MyIE2)
GreenBrowser(前身亦为MyIE3.2)
TouchNet Browser
腾讯TT
GOSURF
世界之窗(TheWorld Browser)
MiniIE
Sleipnir
MyIE(新版4.x为GreenBrowser作者发布,3.2及之前版本为Maxthon、GreenBrowser、iTreeSurf等浏览器的前身)
iTreeSurf(LovelyTree,前身亦为MyIE3.2)
(注:中国大陆的大部分浏览器都使用Trident 排版引擎)



其它使用Trident技术的应用程序
RealPlayer播放程序内附的网页浏览器。
RealNetworks旗下的网络游戏公司RealArcade所提供的服务。
MSN Explorer浏览器。
Microsoft Office Outlook以及Outlook Express电子邮件软件使用Trident技术协助HTML格式的信件数据排版以及“Outlook Today”画面的显示。
微软公司的Encarta百科全书及其相关产品。
微软公司的Windows Media Player使用Trident技术产生“Media Information”页面。
FeedReader - RSS阅读工具
微软公司的Microsoft Office InfoPath 2003(以XML为基础的表格开发器)产品。
微软公司的MSN Messenger实时通信软件利用该技术处理使用Flash技术的游戏或比赛以及广告的展示信息。
ThunderSite网页编辑器。
跨平台的文件阅读软件TomeRaider。
维尔福软件公司的Steam内容传送系统使用Trident技术在该软件的“存储”及“更新消息”的功能。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值