# Trident (motore di rendering)

Trident (anche conosciuto come MSHTML) è il motore di rendering del browser web Internet Explorer e il visualizzatore del Desktop NT e altro.

## Storia

È stato introdotto con la versione 4 di Internet Explorer nell'ottobre del 1997 ed aggiornato ad ogni rilascio del browser. Per la versione 7 di Internet Explorer, Microsoft ha apportato notevoli modifiche per aumentare la compatibilità di Trident con gli standard web e per supportare nuove tecnologie. Nonostante queste modifiche, Trident rimane significativamente meno compatibile con gli standard rispetto ai motori di rendering concorrenti (Gecko, WebCore, KHTML, WebKit e Presto).
Microsoft ha anche sviluppato un motore di rendering per la versione Macintosh di Internet Explorer, denominato Tasman.

## Caratteristiche

Trident è stato progettato come framework per permettere ai programmatori di aggiungere facilmente funzionalità di web browsing nelle applicazioni. Tecnicamente si tratta di un oggetto COM utilizzabile da qualsiasi linguaggio o ambiente che supporti COM (Visual Basic, C/C++, .NET e molti altri). L'oggetto COM espone un elevato numero di interfacce per accedere ad ogni elemento del modello a oggetti DOM, in maniera equivalente a quanto possibile con i linguaggi di scripting HTML (ECMAScript/JavaScript o VBScript).
È anche possibile catturare gli eventi del browser come i click sui link o il caricamento di una pagina. Trident è implementato nel file mshtml.dll.

## Applicazioni basate su Trident

A partire dalla versione 4.0, Trident è il motore di rendering di Internet Explorer. Anche altri web browser lo usano, come motore principale (Maxthon) o come motore alternativo (Netscape 7 e Firefox tramite estensione).
A partire da Windows 98 (o Windows 95/NT 4 con l'integrazione della shell) Trident è usato estensivamente in molte parti di Windows, da Windows Explorer alla guida in linea. Windows Vista usa un motore differente per Explorer.
Numerose altre applicazioni, sia di Microsoft che di terze parti, usano Trident internamente. Un breve elenco include:
* MSN Explorer
* Microsoft Outlook e Outlook Express usano Trident per le e-mail HTML e per la finestra "Outlook Today"
* Microsoft Encarta
* Microsoft Windows Media Player per la pagina "Media Information"
* FeedReader
* Microsoft Office InfoPath
* Windows Live Messenger
* Microsoft Visual Studio
* RealPlayer
* Maxthon Cloud Browser

## Cronologia delle versioni

| Versione di Trident | Versione di MSHTML.dll | Versione di Internet Explorer | Note |
| Nessuna versione | 4.0.x | IE4 | Versione iniziale |
| Nessuna versione | 5.0.x | IE5 | migliore supporto di CSS 1.0 e modifiche radicali nel rendering di CSS 2 |
| Nessuna versione | 5.5.x | IE5.5 | correzione di problemi con CSS |
| Nessuna versione | 6.0.x | IE6 | correzione al box-model e gestione del quirks mode tramite DTD |
| Nessuna versione | 7.0.x | IE7 | risolve molti problemi di rendering CSS e aggiunge il supporto al canale alpha per le immagini PNG |
| 4.0 | 8.0.x | IE8 | prima versione a passare il test Acid2 tranne che per le bande bianche |
| 5.0 | 9.0.x | IE9 | supporto di SVG, HTML5 e CSS3 |
| 6.0 | 10.0.x | IE10 | Aumentato supporto per CSS3, HTML5 e ES5. |
| 7.0 | 11.0.x | IE11 | Supporto a WebGL e SPDY. Migliore aderenza allo standard HTML5. Ottimizzazione dell'esecuzione script JS$^{[17]}$ Incluso in Windows Phone 8.1. |