web-dev-qa-db-fra.com

Comment forcer IE10 à rendre la page en mode document IE9

J'ai deux questions:

  1. Comment puis-je forcer IE10 à restituer en mode document IE9? Actuellement, il rend ma page en mode document standard.

  2. Dans la barre d'outils de développeur d'IE10, je ne suis pas en mesure de voir l'option du mode de document d'IE10. N'est-il pas implémenté ou la version de mon navigateur est-elle obsolète?

Merci pour votre aide.


Edit: merci à tous pour les solutions fournies. Auparavant, j'utilisais une balise méta <meta http-equiv="x-ua-compatible" content="IE=Edge" > Simplement pour m'assurer que IE rendrait la page au mode de document le plus élevé. pour rendre la page en mode IE9: <meta http-equiv="x-ua-compatible" content="IE=9" >.

24
Amit

Vous devriez pouvoir le faire en utilisant la balise méta X-UA :

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

Cependant, si vous vous trouvez dans l'obligation de faire cela, vous faites probablement quelque chose de mal et vous devriez regarder ce que vous faites et voir si vous pouvez le faire d'une manière différente/meilleure.

31
Shauna

Vous pouvez modifier le registre si vous souhaitez apporter des modifications uniquement à votre propre système. Si vous utilisez IE10 et que de nombreux sites Web visités ne s'affichent pas correctement dans IE10, vous pouvez modifier votre registre pour forcer IE à s'ouvrir en mode IE9.

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

Créez un DWORD en tant que iexplore.exe et donnez la valeur 9999. Redémarrez votre IE et il s'ouvrira en mode IE9 :)

Merci à mon collègue Sreejith D :)

8
Vinod K

Je n'avais jamais vu cela auparavant, mais voici comment cela a été fait pour émuler IE 8/7 avec IE 9:

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

Sinon, essayez celui-ci:

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

Ajoutez-les à votre en-tête avec les autres balises méta. Cela devrait forcer IE10 à rendre IE9.

Une autre option que vous pouvez faire (en supposant que vous utilisiez PHP) est d’ajouter ceci à votre fichier .htaccess:

Header set X-UA-Compatible "IE=9"

Cela exécutera l'action de manière universelle, au lieu de vous inquiéter d'ajouter la balise méta à tous vos en-têtes.

8
PlantTheIdea

Par ce que this dit, IE10 (l’article est référé à une version préliminaire, en tout cas), il est capable d’utiliser X-UA-Compatibleuniquement si le document est en mode quirks (no DOCTYPE), sinon IE10 ne réagira pas à la demande.

Voici un extrait:

Ainsi, pour que IE10 réagisse à la directive X-UA-Compatible, il faut soit créer une page qui déclenche le mode quirks conformément aux règles de HTML5 (c’est-à-dire: une page sans doctype). Il est également possible d’envoyer la directive sous forme d’en-tête HTTP: Une directive HTTP envoyée semble n'avoir aucun effet si vous l'utilisez pour rétrograder le rendu. Elle ne peut être utilisée que pour mettre à niveau le rendu.

Donc, vous devez le faire manuellement avec les outils Dvelopers ou avec le mode quirks (mais je suggère de rester en mode IE10 qui est pour la première fois aligné sur le standard des autres serveurs).

EDIT: Voici un lien utile à lire:

http://msdn.Microsoft.com/en-us/library/cc288325(v=vs.85).aspx

http://msdn.Microsoft.com/en-us/library/jj676915(v=vs.85).aspx

http://blogs.msdn.com/b/ie/archive/2011/12/14/interoperable-html5-quirks-mode-in-ie10.aspx

3
Ragnarokkr

Vous pouvez forcer IE10 à effectuer le rendu en mode IE9 en ajoutant:

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

dans votre tag <head>.

Voir MSDN pour plus d'informations ...

2
Bart

il y a plusieurs façons de le faire:

ajouter X-UA-Compatible tag à la tête en-tête de réponse http

en utilisant IE outils F12

changer de registre Windows

1
Shawn Xue

Le hack est récursif. C'est comme si IE utilisait lui-même le composant utilisé par de nombreux autres processus souhaitant un "composant Web". Par conséquent, dans le registre, nous ajoutons IEXPLORE.exe. En fait, c'est un hack récursif.

0

J'ai trouvé ce post alors que je cherchais une solution pour mon site Web DNN6 . L'erreur était 

SCRIPT5007: Impossible d'obtenir la propriété 'documentElement' de indéfinie ou référence nulle

Mais il me fallait la même solution: forcer le mode de compatibilité vers IE9. Alors laissez-moi partager avec vous ce que j'ai fait pour résoudre ce problème.

Pour les utilisateurs de DotNetNuke 6, essayez donc StyleHelper SkinObject

A bien fonctionné pour moi!

0
Ana Sampaio