Aggiornamento di ottobre 2015
Questa risposta è stata pubblicata diversi anni fa e ora la domanda dovrebbe davvero essere: dovresti prendere in considerazione l'uso del X-UA-Compatible
tag sul tuo sito? con le modifiche che Microsoft ha apportato ai suoi browser (ulteriori informazioni su quelli seguenti).
A seconda dei browser Microsoft supportati, potrebbe non essere necessario continuare a utilizzare il X-UA-Compatible
tag. Se hai bisogno di supportare IE9 o IE8, allora consiglierei di usare il tag. Se supporti solo i browser più recenti (IE11 e / o Edge), prenderei in considerazione la possibilità di eliminare del tutto questo tag. Se usi Twitter Bootstrap e devi eliminare gli avvisi di convalida, questo tag deve apparire nell'ordine specificato. Ulteriori informazioni di seguito:
Il X-UA-Compatible
metatag consente agli autori Web di scegliere quale versione di Internet Explorer deve essere visualizzata come pagina. IE11 ha apportato modifiche a queste modalità; vedere la nota IE11 di seguito. Microsoft Edge , il browser che ha sostituito IE11, onora il X-UA-Compatible
meta tag solo in determinate circostanze. Vedi la nota di Microsoft Edge di seguito.
Secondo Microsoft, quando si utilizza il X-UA-Compatible
tag, dovrebbe essere il più alto possibile nel documento head
:
Se si utilizza il tag META compatibile con X-UA, si desidera posizionarlo il più vicino possibile alla parte superiore della TESTA della pagina. Internet Explorer inizia a interpretare il markup utilizzando l'ultima versione. Quando Internet Explorer rileva il tag META compatibile con X-UA, ricomincia da capo utilizzando il motore della versione designata. Questo è un successo in quanto il browser deve interrompere e riavviare l'analisi del contenuto.
Ecco le tue opzioni:
- "IE = edge"
- "IE = 11"
- "IE = EmulateIE11"
- "IE = 10"
- "IE = EmulateIE10"
- "IE = 9"
- "IE = EmulateIE9
- "IE = 8"
- "IE = EmulateIE8"
- "IE = 7"
- "IE = EmulateIE7"
- "IE = 5"
Per cercare di capire cosa significhi ciascuno, ecco le definizioni fornite da Microsoft:
Internet Explorer supporta una serie di modalità di compatibilità dei documenti che abilitano funzionalità diverse e possono influire sulla modalità di visualizzazione del contenuto:
La modalità Edge indica a Internet Explorer di visualizzare il contenuto nella modalità più alta disponibile. Con Internet Explorer 9, questo equivale alla modalità IE9. Se una versione futura di Internet Explorer supportasse una modalità di compatibilità superiore, le pagine impostate sulla modalità edge appariranno nella modalità più alta supportata da quella versione. Queste stesse pagine verrebbero comunque visualizzate in modalità IE9 quando visualizzate con Internet Explorer 9. Internet Explorer supporta una serie di modalità di compatibilità dei documenti che abilitano funzionalità diverse e possono influire sulla modalità di visualizzazione del contenuto:
La modalità IE11 offre il massimo supporto disponibile per standard di settore affermati ed emergenti, inclusi HTML5, CSS3 e altri.
La modalità IE10 offre il massimo supporto disponibile per standard di settore affermati ed emergenti, inclusi HTML5, CSS3 e altri.
La modalità IE9 offre il massimo supporto disponibile per standard di settore affermati ed emergenti, tra cui HTML5 (Working Draft), W3C Cascading Style Sheets Livello 3 Specification (Working Draft), Scalable Vector Graphics (SVG) 1.0 Specification e altri. [Nota dell'editore: IE 9 non supporta le animazioni CSS3].
La modalità IE8 supporta molti standard consolidati, tra cui la specifica W3C Cascading Style Sheets Level 2.1 e l'API dei selettori W3C; fornisce inoltre un supporto limitato per le specifiche di livello 3 (Working Draft) dei fogli di stile a cascata del W3C e altri standard emergenti.
La modalità IE7 esegue il rendering del contenuto come se fosse visualizzato in modalità standard da Internet Explorer 7, indipendentemente dal fatto che la pagina contenga o meno una direttiva.
Emula modalità IE9 indica a Internet Explorer di utilizzare la direttiva per determinare come eseguire il rendering del contenuto. Le direttive in modalità standard sono visualizzate in modalità IE9 e le direttive in modalità strane sono visualizzate in modalità IE5. A differenza della modalità IE9, la modalità Emulate IE9 rispetta la direttiva.
Emula modalità IE8 indica a Internet Explorer di utilizzare la direttiva per determinare come eseguire il rendering del contenuto. Le direttive in modalità standard sono visualizzate in modalità IE8 e le direttive in modalità strane sono visualizzate in modalità IE5. A differenza della modalità IE8, la modalità Emulate IE8 rispetta la direttiva.
Emula modalità IE7 indica a Internet Explorer di utilizzare la direttiva per determinare come eseguire il rendering del contenuto. Le direttive in modalità standard sono visualizzate in modalità standard di Internet Explorer 7 e le direttive in modalità strane sono visualizzate in modalità IE5. A differenza della modalità IE7, la modalità Emulate IE7 rispetta la direttiva. Per molti siti Web, questa è la modalità di compatibilità preferita.
La modalità IE5 esegue il rendering del contenuto come se fosse visualizzato in modalità strane da Internet Explorer 7, che è molto simile al modo in cui il contenuto veniva visualizzato in Microsoft Internet Explorer 5.
IE10 NOTA: A partire da IE10, la modalità di stranezza si comporta in modo diverso rispetto alle versioni precedenti del browser. In IE9 e nelle versioni precedenti, la modalità stranezza limitava la pagina Web alle funzionalità supportate da IE5.5. In IE10, la modalità Quirks è conforme alle differenze specificate nella specifica HTML5.
Personalmente, scelgo sempre il http-equiv="X-UA-Compatible" content="IE=edge"
meta tag, poiché le versioni precedenti hanno molti bug e non voglio che IE decida di andare in "Modalità compatibilità" e mostrare il mio sito come IE7 rispetto a IE8 o 9. Preferisco sempre l'ultima versione di IE.
IE11
Da Microsoft :
A partire da IE11, la modalità bordo è la modalità documento preferita; rappresenta il massimo supporto per gli standard moderni disponibili per il browser.
Utilizzare la dichiarazione del tipo di documento HTML5 per abilitare la modalità edge:
<!doctype html>
La modalità Edge è stata introdotta in Internet Explorer 8 ed è disponibile in ogni versione successiva. Le funzionalità supportate dalla modalità edge sono limitate a quelle supportate dalla versione specifica del browser che esegue il rendering del contenuto.
A partire da IE11, le modalità documento sono obsolete e non dovrebbero più essere utilizzate, se non su base temporanea. Assicurati di aggiornare i siti che si basano su funzionalità legacy e modalità documento per riflettere gli standard moderni.
Se devi scegliere come target una modalità documento specifica in modo che il tuo sito funzioni mentre lo rielabori per supportare standard e funzionalità moderni, tieni presente che stai utilizzando una funzione di transizione, che potrebbe non essere disponibile nelle versioni future.
Se al momento usi l'intestazione compatibile con x-ua per scegliere come target una modalità documento legacy, è possibile che il tuo sito non rifletta la migliore esperienza disponibile con IE11.
Microsoft Edge (sostituzione per Internet Explorer fornito in bundle con Windows 10)
Informazioni sul X-UA-Compatible
meta tag per la versione "Edge" di IE. Da Microsoft :
Presentazione della modalità documento Edge "vivente"
Come annunciato nell'agosto 2013, stiamo deprecando le modalità documento a partire da IE11. Con i nostri ultimi aggiornamenti della piattaforma, la necessità di modalità documento legacy è principalmente limitata alle app Web legacy Enterprise. Con le nuove modifiche all'architettura, queste modalità documento legacy saranno isolate dalle modifiche nella modalità Edge "vivente", che contribuirà a garantire un livello molto più elevato di compatibilità per i clienti che dipendono da tali modalità e ci aiuterà a muoverci ancora più rapidamente sui miglioramenti in Edge . IE rispetterà comunque le modalità documento fornite dai siti intranet, i siti nell'elenco Visualizzazione compatibilità e se utilizzati solo con la modalità Enterprise.
I siti Internet pubblici verranno renderizzati con la nuova piattaforma Edge mode (ignorando X-UA-Compatible). Il nostro obiettivo è che Edge sia la modalità documento "vivente" da qui in poi e non verranno introdotte ulteriori modalità documento in futuro.
Con le modifiche in Microsoft Edge che non supportano più le modalità documento nella maggior parte dei casi, Microsoft ha uno strumento per scansionare il tuo sito per controllare e vedere se ha un codice non compatibile con Edge.
Chrome = 1 Informazioni per IE
V'è anche chrome=1
che è possibile utilizzare o utilizzare insieme con una delle opzioni di cui sopra, come: <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
. chrome=1
è per Chrome Frame di Google che è definito come:
Google Chrome Frame è un plug-in del browser open source. Gli utenti che hanno installato il plug-in hanno accesso alle tecnologie web aperte di Google Chrome e al motore JavaScript veloce quando aprono le pagine nel browser.
Google Chrome Frame migliora la tua esperienza di navigazione in Internet Explorer. Visualizza i siti abilitati per Google Chrome Frame utilizzando la tecnologia di rendering di Google Chrome, dandoti accesso alle più recenti funzionalità HTML5 nonché alle prestazioni e alle funzioni di sicurezza di Google Chrome senza interrompere in alcun modo il normale utilizzo del browser.
Quando viene installato Google Chrome Frame, il Web migliora solo senza che tu debba pensarci.
Ma per far funzionare quel plug-in devi usare chrome=1
il X-UA-Compatible
meta tag.
Ulteriori informazioni su Chrome Frame sono disponibili qui .
Nota: Google Chrome Frame funziona solo per IE6 fino a IE9 ed è stato ritirato il 25 febbraio 2014. Ulteriori informazioni sono disponibili qui . Grazie a @mck per il link.
convalida:
HTML5 :
La pagina verrà convalidata utilizzando W3 Validator solo quando si utilizza <meta http-equiv="X-UA-Compatible" content="IE=Edge">
. Per altri valori genererà l'errore: A meta element with an http-equiv attribute whose value is X-UA-Compatible must have a content attribute with the value IE=edge.
in altre parole, se lo hai, IE=edge,chrome=1
non verrà convalidato. Ignoro completamente questo errore poiché i browser moderni ignorano semplicemente questa riga di codice.
Se devi avere un codice completamente valido, considera di farlo a livello di server impostando l'intestazione HTTP. Come nota, dice Microsoft, If both of these instructions are sent (meta and HTTP), the developer's preference (meta element) takes precedence over the web server setting (HTTP header).
vedi la risposta di olibre o la risposta di bitinn per maggiori dettagli su come impostare un'intestazione HTTP.
XHTML
Non esiste un problema con la convalida quando si utilizza <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
finché il tag è chiuso correttamente (cioè />
vs >
).
Bootstrap di Twitter
Questo tag è stato fortemente raccomandato dal team Bootstrap almeno dal 2014 e Bootlint , la linter creata dal team twbs continua a emettere un avviso quando il tag viene omesso. La linter distingue tra avvertenze ed errori e come tale la gravità dell'omissione di questo tag può essere considerata minore.
Per ulteriori informazioni, X-UA-Compatible
consultare il sito Web Microsoft che definisce la compatibilità dei documenti .
Per ulteriori informazioni su ciò che supporta IE, vedere caniuse.com .
Per ulteriori informazioni sui requisiti Bootstrap di Twitter, consultare la pagina wiki del progetto bootlint .