2010-09-27 4 views
72

Sono rimasto bloccato su questo per un po '- Non riuscivo a capire perché un sito Web rende in modo diverso in due versioni identiche di Internet Explorer. Mezz'ora fa mi sono imbattuto in un pulsante di modalità compatibilità in IE che mi ha fatto davvero arrabbiare.Come posso disabilitare la modalità di compatibilità IE a livello di programmazione?

La disattivazione della modalità di compatibilità ha risolto il problema.

C'è un modo per disabilitarlo a livello di codice, ad esempio da una pagina Web?

Edit:

Proprio imbattuto in questo blog https://blogs.msdn.com/b/askie/archive/2009/03/23/understanding-compatibility-modes-in-internet-explorer-8.aspx

vi posterò un codice di esempio, dopo aver letto l'articolo

+0

Vedere http: // StackOverflow. com/domande/1014666/forza-IE8-in-IE7-compatibilità-mode. Non ha nulla a che fare con il doctype. –

+0

Mi aspetto che ci sia un settaggio Windows/IE, ma nulla da fare dalla pagina web per dettare questo, dato che si vuole rimanere in IE8, non andare in modalità compatibilità. –

+0

Non è sicuro se è possibile farlo attraverso una pagina Web, potrebbe essere meglio codificare per la modalità di compatibilità IE (IE 7). :( – Spooks

risposta

88

Se si desidera che il rendering "vecchio", e nessun pulsante per visualizzare sulla barra degli strumenti in modo che gli utenti possono passare da una modalità che è possibile utilizzare questo:

<head> 
    <!-- Mimic Internet Explorer 7 --> 
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" > 
    <title>My Web Page</title> 
</head> 

altre opzioni (vecchi e nuovi) includono: IE=5 , IE=7, IE=8, o IE=edge

(bordo è uguale a più alta modalità disponibili)

+0

Grazie - funziona. Ciò significa che devo cambiare il mio codice per funzionare in IE 7 .. –

+0

C'è qualcosa in particolare che non funziona nella modalità standard IE8? In caso affermativo, invia un'altra domanda e forse possiamo risolverlo per te – scunliffe

+0

È un posizionamento di div. Ho letto da qualche parte che IE7 ha bisogno di qualche pixel in più per i margini sinistro e destro o qualcosa su quelle linee.Il sito sembra fantastico in firefox, safari, chrome, even ie 8 senza la modalità di compatibilità ... ma IE 7 è una storia diversa –

4

Si prega di notare, inoltre, che anche le impostazioni del browser IE8 possono imporre un certo modo. Ho un cliente che ha la modalità di compatibilità IE8 applicata dalla politica in modalità Intranet.

+0

+1, questo può essere applicato anche in IE9. Probabilmente in tutte le versioni più recenti di IE credo. –

0

si prega di aggiungere per forzare IE non applicare modalità di compatibilità

<meta http-equiv=Content-Type content="text/html; charset=utf-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"> 
0

Nel mio caso, ho riparato aggiungendo il seguente tag dopo il tag <head>:

<meta content="IE=edge" http-equiv="X-UA-Compatible">