Je suis bloqué sur celui-ci depuis un moment - je ne pouvais pas comprendre pourquoi un site Web affichait un rendu différent dans deux versions identiques d'Internet Explorer. Il y a une demi-heure, je suis tombé sur un bouton de mode de compatibilité dans IE) qui m'a vraiment mis en colère.
La désactivation du mode de compatibilité a résolu mon problème.
Existe-t-il un moyen de le désactiver par programme, à partir d’une page Web?
Modifier:
Je viens de tomber sur ce blog https://blogs.msdn.com/b/askie/archive/2009/03/23/understanding-compatibility-modes-in-internet-Explorer-8.aspx
Je posterai un exemple de code après avoir lu l'article
Si vous voulez que le "vieux" rendu, et qu'aucun bouton ne soit affiché dans la barre d'outils afin que les utilisateurs puissent changer de mode, vous pouvez utiliser ceci:
<head>
<!-- Mimic Internet Explorer 7 -->
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" >
<title>My Web Page</title>
</head>
les autres options (anciennes et nouvelles) incluent: IE=5
, IE=7
, IE=8
, ou IE=Edge
(Edge est égal au mode le plus élevé disponible)
Vous devez probablement définir votre DOCTYPE correctement. Consultez les articles de MSDN sur DOCTYPE et Définition de la compatibilité des documents pour plus d'informations.
Veuillez également noter que les paramètres du navigateur IE8 peuvent également appliquer un certain mode. J'ai un client qui a le mode de compatibilité IE8 imposé par la stratégie en mode intranet.
Dans mon cas, je l'ai corrigé en ajoutant la balise suivante après le <head>
tag:
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
S'il vous plaît ajouter à la force IE pas appliquer le mode de compatibilité
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">