Trident (software) explained

Trident
Other Names:MSHTML
Developer:Microsoft
Latest Release Version:8.0
Discontinued:yes
Replaced By:EdgeHTML
Programming Language:C++
Operating System:Microsoft Windows
Genre:Browser engine
License:Proprietary

Trident[1] [2] [3] (also known as MSHTML[1] [2] [4]) is a proprietary browser engine for the Microsoft Windows version of Internet Explorer, developed by Microsoft.

MSHTML debuted with the release of Internet Explorer 4 in 1997. For versions 7 and 8 of Internet Explorer, Microsoft made significant changes to MSHTML's layout capabilities to improve compliance with Web standards and add support for new technologies.[5] [6] [7]

MSHTML will continue to receive security updates[8] for the IE mode of Microsoft Edge until at least 2029. However, support for new Web standards will not be added.

Use in software development

MSHTML was designed as a software component to allow software developers to easily add web browsing functionality to their own applications. It presents a COM interface for accessing and editing web pages in any COM-supported environment, like C++ and .NET. For instance, a web browser control can be added to a C++ program and MSHTML can then be used to access the page currently displayed in the web browser and retrieve element values. Events from the web browser control can also be captured. MSHTML functionality becomes available by linking the file to the software project.

Release history

MSHTML versionMSHTML.dll versionInternet Explorer versionInternet Explorer Mobile versionNotes
No version4.0.x4.0Initial version.
5.0.x5.0Improved CSS 1 support and had sweeping changes in CSS 2 rendering.
5.5.x5.5Corrected issues with CSS handling.
6.0.x6.0Corrected the box model and added quirks mode with DTD switching.
7.0.x7.0Fixed many CSS rendering issues and added partial PNG alpha support.
6.0IEMobile 6 combines many features of IE 6, 7, and 8.
3.17.07.0Second port on a mobile system of MSHTML. IE Mobile version for Windows Phone 7.
4.08.0.x8.0First version to pass the Acid 2 test. Added full support for CSS 2.1.
5.09.0.x9.09.0Added support for SVG, XHTML, HTML5, and CSS 3. Added a new hardware-accelerated JScript engine named Chakra. Scores 100/100 on the Acid3 test. Included with IE 9 Mobile in Windows Phone 7.5 "Mango".
6.010.0.x10.010.0More support for CSS 3, HTML5 and ES5. Included in Windows Phone 8. Support for linear gradient CSS transitions.
7.011.0.x11.011.0Support for WebGL and SPDY. Improved support for HTML5. Speed improvement. Included in Windows Phone 8.1.

Use cases

All versions of Internet Explorer for Windows from 4.0 onwards use MSHTML, and it is also used by various other web browsers and software components (see Internet Explorer shells). In Windows 98, Windows Me, and Windows 2000, it is also used for the Windows file manager/shell, Windows Explorer.[9] The Add/Remove Programs tool in Windows 2000 uses MSHTML to render the list of installed programs,[10] and in Windows XP it is also used for the User Accounts Control Panel, which is an HTML Application.[11] MSHTML, however, was not used by Internet Explorer for Mac (which used Tasman starting with version 5.0), nor by the early versions of Internet Explorer Mobile.

Some other MSHTML-based applications include:

Standards compliance

Current versions of MSHTML, as of Internet Explorer 9, have introduced support for CSS 3, HTML5, and SVG, as well as other modern web standards. Web standards compliance was gradually improved with the evolution of MSHTML. Although each version of IE has improved standards support, including the introduction of a "standards-compliant mode" in version 6, the core standards that are used to build web pages (HTML and CSS) were sometimes implemented in an incomplete fashion. For example, there was no support for the <nowiki><abbr></nowiki> element which is part of the HTML 4.01 standard prior to IE 8. There were also some CSS attributes missing from MSHTML, like min-height, etc. as of Internet Explorer 6. As of Internet Explorer 8 CSS 2.1 is fully supported as well as some CSS 3.0 attributes.[13] This lack of standards compliance has been known to cause rendering bugs and lack of support for modern web technologies, which often increases development time for web pages.[14] Still, HTML rendering differences between standards-compliant browsers are not yet completely resolved.

Microsoft alternatives

Apart from MSHTML, Microsoft also has and uses several other layout engines. One of them, known as Tasman, was used in Internet Explorer 5 for Mac. Development of Internet Explorer for Mac was halted in roughly 2003, but development of Tasman continued to a limited extent, and was later included in Office 2004 for Mac. Office for Mac 2011 uses the open source WebKit engine. Microsoft's now defunct web design product, Expression Web, as well as Visual Studio 2008 and later, do not use Internet Explorer's MSHTML engine, but rather a different engine.[15]

In 2014, MSHTML was forked to create the engine EdgeHTML for Microsoft Edge on Windows 10. The new engine is "designed for interoperability with the modern web" and deprecates or removes a number of legacy components and behaviors, including document modes, ensuring that pure, standards-compliant HTML will render properly in browsers without the need for special considerations by web developers.[16] [17] This resulted in a completely new browser called Microsoft Edge (later referred to as "Microsoft Edge Legacy",[18] with a flat blue "e" icon) which replaced Internet Explorer as Windows' stock browser and became the base of Microsoft's web related services, until its replacement with a Blink / Chromium-based browser, also called Microsoft Edge[19] [20] (with a brand new wave-like icon) in late 2020.

See also

Notes and References

  1. Web site: New York State Office of Information Technology Services . A Vulnerability in Microsoft MSHTML Could Allow for Remote Code Execution . 2021-09-08 . mdy . 2023-03-14.
  2. Web site: Microsoft Support . Internet Explorer - Trident Engine .
  3. Web site: RIP Internet Explorer: Microsoft's iconic browser is being killed off in June . PCWorld.
  4. Web site: Microsoft Security . Analyzing attacks that exploit the CVE-2021-40444 MSHTML vulnerability . 15 September 2021 .
  5. Web site: Details on our CSS changes for IE7 . IEBlog . . 2006-08-22 . 2022-01-01.
  6. Web site: Overview of Platform Improvements in IE8 RC1 . IEBlog . . 2009-01-29 . 2022-01-01.
  7. Web site: Microsoft's Interoperability Principles and IE8 . IEBlog . . 2008-03-03 . 2022-01-01.
  8. Web site: Lifecycle FAQ - Internet Explorer and Microsoft Edge . Microsoft Lifecycle Policy . . 2022-01-01 . Microsoft is committed to supporting Internet Explorer mode in Microsoft Edge through at least 2029, on supported operating systems..
  9. Web site: How to Add or Remove Windows Desktop Update . Microsoft Support . KB165695 . https://web.archive.org/web/20160320035722/https://support.microsoft.com/en-us/kb/165695 . 2016-03-20.
  10. Web site: Add/Remove Programs tool displays installed programs incorrectly . Troubleshoot . . 23 September 2021 . KB266668 . 2022-01-01.
  11. Web site: "Internet Explorer Script Error" error message when you click User Accounts in Control Panel many times in quick succession on a Windows XP-based computer . Microsoft Support . KB886617 . https://web.archive.org/web/20160319033605/https://support.microsoft.com/en-us/kb/886617 . 2016-03-19.
  12. Web site: Chromium Embedded Framework . developer.valvesoftware.com. Last edited on 25 June 2012 . 9 April 2023.
  13. Web site: CSS Compatibility and Internet Explorer . . 2011-03-09 . 2022-01-01.
  14. Web site: Shah . Anup . 2007-12-14 . Microsoft's Internet Explorer Slows Down Web Development . onenaught.com . 2022-01-01.
  15. Web site: Mauceri . Rob . 2007-04-11 . Office Live and SharePoint . Microsoft SharePoint Designer Team Blog . . 2022-01-01 . SharePoint Designer doesn't use Trident. SharePoint Designer, Expression Web, and the next version of Visual Studio's Visual Web Designer (code name Orcas) all use the same standards-based web design component. This component was developed jointly by the three product teams for high fidelity rendering of web standards like CSS, XHTML, as well as ASP.net..
  16. Web site: Living on the Edge – our next step in helping the web just work . IEBlog . . 2014-11-11 . 2022-01-01.
  17. Web site: Project Spartan and the Windows 10 January Preview Build . IEBlog . . 2015-01-22 . 2022-01-01.
  18. Web site: Microsoft 365 apps and services to end support for IE 11; End of support coming to the legacy version of Microsoft Edge . Microsoft Lifecycle Policy . . 2022-01-01.
  19. News: Warren . Tom . 2020-01-15 . Microsoft's new Edge Chromium browser launches on Windows and macOS . . 2022-01-01.
  20. News: Hollister . Sean . 2020-07-02 . With Edge, Microsoft's forced Windows updates just sank to a new low . . 2022-01-01.