web-dev-qa-db-fra.com

Pourquoi IE9 s'ouvre-t-il en mode Document en tant que normes IE7?

Lorsque j'ouvre une page Web dans IE9 avec DOCTYPE en tant que

<!DOCTYPE html>

Il ouvre le mode document en tant que normes IE7.

J'ai besoin des normes IE9 par défaut pour l'ouverture de la page.

Comment corriger ce problème de mode document?

Une capture d’écran de son utilisation IE outil de développement de navigateur)

enter image description here

67
Justin John

Essayez cette réponse: https://stackoverflow.com/a/13524518/167931 .

Résumé, donnez plus d’informations au navigateur IE dans la balise Meta:

<!DOCTYPE html>
<html>
  <head>
    <title>My Web</title>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />

Modifier Remarque: comme le mentionne Olly Hodgson, l'option appropriée est IE = Edge, comme indiqué actuellement dans l'extrait de code ci-dessus. Vous trouverez ci-dessous la version originale, également opérationnelle:

   <meta http-equiv="X-UA-Compatible" content="IE=100" />
99
Radim Köhler

Plusieurs raisons peuvent expliquer l’analyse du document sous le standard IE7:

  1. Le serveur envoie un X-UA-Compatible en-tête pour IE7 dans la réponse HTTP du document. Vérifiez les en-têtes de réponse du serveur à l'aide d'un outil tel que Fiddler .
  2. Le document HTML définit une balise META avec le X-UA-Compatible valeur de la propriété pour IE7.
  3. La page est détectée automatiquement par IE pour ouverture dans la "vue de compatibilité". Notez ici que par défaut tous les sites intranet sont affichés dans la "vue de compatibilité" dans IE. Décochez la case "Afficher les sites intranet". en vue de compatibilité "sous Tools -> Compatibility view settings dans IE. La case "Afficher tous les sites Web en vue de la compatibilité" doit également être décochée.
  4. Vous avez utilisé les outils de développement et défini explicitement l'affichage de la page dans le mode "Normes IE7". Notez que cela ne se produira toutefois que par client.

Mise à jour 2016-01-28
Comme @Gordon l’a souligné dans les commentaires ci-dessous, une autre raison peut être que l’administrateur réseau a configuré le site pour la vue de compatibilité en tant que stratégie de groupe sur le réseau.
Dans ce cas, la seule solution consiste à contacter l'administrateur du réseau pour supprimer le site de la stratégie de groupe. Voir HTML1203 ici .

36
Tanzeel Kazi

Vous pouvez également définir ceci dans le fichier web.config.

<system.webServer>
    <httpProtocol>
        <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=Edge" />
        </customHeaders>
    </httpProtocol>
7
Don Rolling

Votre page contient-elle la balise meta pour forcer IE7?

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

cela forcera la page à utiliser la compatibilité IE7.

3
Qpirate

Je voulais juste dire que si votre serveur Web est Apache2, vous pouvez définir l'en-tête de réponse comme ci-dessous dans votre configuration VirtualHost, ce qui résoudra également le problème.

Header set X-UA-Compatible "IE=Edge"
2
Dev Blanked

Le problème semble être spécifique à la combinaison de IE9 et du mode de compatibilité. Pour nous, nous ne pouvons pas désactiver le mode de compatibilité car il s'agit d'un site SharePoint 2013 et IE11 doit s'exécuter en mode de compatibilité pour modifier des pages, mais IE9 se comportait tel que vous le montriez. Définir la compatibilité X-UA sur "IE = Edge" dans une balise méta a résolu notre problème, bien que définir la valeur sur IE = 10 n'affecte pas notre comportement. Nous avons aussi le même doctype.

1
Matt Connolly

Si votre projet est ASP.NET MVC, veillez à ajouter les éléments suivants:

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

tag dans votre page de mise en page (modèle). Je viens de passer deux heures à déboguer et à peaufiner, mais je me suis rendu compte que je n'avais ajouté que cette balise méta dans mes pages enfants. Dès que je l'ai ajouté à ma page de présentation, le navigateur s'est parfaitement chargé en mode Edge.

1
Jason Marsell