Forza IE 8 nella modalità di compatibilità IE7
Domanda
Esiste un modo per forzare IE8 in modalità di compatibilità IE7 utilizzando .NET o Javascript?
Soluzione
Se lo aggiungi ai meta tag:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
IE8 renderà la pagina come IE7.
Altri suggerimenti
Puoi farlo in web.config
<httpProtocol>
<customHeaders>
<add name="X-UA-Compatible" value="IE=7"/>
</customHeaders>
</httpProtocol>
Ho ottenuto risultati migliori con questo rispetto alle soluzioni di cui sopra. Non sono sicuro del perché questo non sia stato dato come soluzione. :)
Potrei averlo trovato ora. http: //blog.lroot.com/articles/the-ie7-compatibility-tag-force-ie8-to-use-the-ie7-rendering-mode/
Il sito dice che aggiunge questo meta tag:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
o aggiungendolo a .htaccess
Header set X-UA-Compatible: IE=EmulateIE7
Esiste un'intestazione HTTP è possibile impostare che costringerà IE8 a utilizzare la modalità di compatibilità IE7.
è ancora più semplice di così. Usando HTML puoi semplicemente aggiungere questo metatag alla tua pagina (prima cosa sulla pagina):
<meta http-equiv="X-UA-Compatible" content="IE=7" />
Se volevi farlo usando.net, devi solo inviare la tua richiesta http con quelle meta informazioni nell'intestazione. Ciò richiederebbe comunque un aggiornamento della pagina per funzionare.
Inoltre, puoi guardare una domanda simile qui: Modalità di compatibilità in IE8 usando VBScript
un altro se si desidera cambiare il rendering della pagina IE 8 in modalità standard IE 8
<meta http-equiv="X-UA-Compatible" content="IE=100" /> <!-- IE8 mode -->
Una nota a questo:
L'emulazione di IE 8.0 promette di visualizzare la stessa pagina. Esistono sottili differenze che potrebbero causare l'interruzione della funzionalità. Di recente ho avuto un problema con questo. Dove IE 7.0 utilizza una funzione wrapper javascript chiamata " anonymous () " in IE 8.0 il wrapper è stato nominato in modo diverso.
Quindi non aspettarti che cose come JavaScript facciano solo "lavoro", perché attivi l'emulazione.
Questo può essere fatto in IIS: http://weblogs.asp.net/joelvarty/archive/2009/03/23/force-ie7-compatibility-mode-in-ie8-with-iis-settings.aspx
Leggi anche i commenti: Mercoledì 01 aprile 2009 8:57 di John Moore
Un rapido follow-up. Questo ha funzionato benissimo per il mio sito purché utilizzi il valore IE = EmulateIE7. Il tentativo di utilizzare IE = 7 ha comportato il blocco del mio sito quando eseguito su IE8.
il mio codice ha questo tag
meta http-equiv = " Compatibile X-UA " content = " IE = 7 " / & Gt;
c'è un modo in cui posso saltare questo tag e tuttavia i layout vengono visualizzati bene usando quel tag il display funzionerà fino a IE 7 ma voglio eseguirlo wel in ulteriori versioni ...