web-dev-qa-db-fra.com

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

Quelle est la différence si une page Web commence par

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

et si la page commence par

<!DOCTYPE html> 
<html> 
  <head> 
     <!-- without X-UA-Compatible meta -->

S'il n'y a pas de différence, je suppose que je peux simplement ignorer l'en-tête méta X-UA-Compatible, car je veux simplement qu'il soit rendu dans le mode le plus standard dans toutes les versions IE.

1341
Morgan Cheng

Mise à jour d'octobre 2015

Cette réponse a été publiée il y a plusieurs années et la question devrait maintenant être si vous envisagez même d'utiliser la balise X-UA-Compatible sur votre site? avec les modifications apportées par Microsoft à sa navigateurs (plus sur ceux ci-dessous).

Selon les navigateurs Microsoft que vous prenez en charge, il se peut que vous n’ayez pas besoin de continuer à utiliser la balise X-UA-Compatible. Si vous avez besoin de supporter IE9 ou IE8, alors je vous recommande d'utiliser la balise. Si vous ne prenez en charge que les navigateurs les plus récents (IE11 et/ou Edge), j’envisagerais de supprimer complètement cette balise. Si vous utilisez Twitter Bootstrap et que vous devez éliminer les avertissements de validation, cette balise doit apparaître dans l'ordre indiqué. Informations supplémentaires ci-dessous:


La balise méta X-UA-Compatible permet aux auteurs Web de choisir la version d'Internet Explorer sous laquelle la page doit être rendue. IE11 a apporté des modifications à ces modes; voir la note IE11 ci-dessous. Microsoft Edge , le navigateur qui a remplacé IE11, n'honore que la balise méta X-UA-Compatible dans certaines circonstances. Voir la note Microsoft Edge ci-dessous.

Selon Microsoft, lors de l'utilisation de la balise X-UA-Compatible, elle doit être aussi haute que possible dans votre document head:

Si vous utilisez la balise META compatible X-UA, vous souhaitez la placer aussi près que possible du haut de la page HEAD. Internet Explorer commence à interpréter le balisage à l'aide de la dernière version. Lorsque Internet Explorer rencontre la balise META compatible X-UA, il recommence en utilisant le moteur de la version désignée. C'est un coup dur pour les performances car le navigateur doit arrêter et redémarrer l'analyse du contenu.

Voici vos options:

  • "IE = Edge"
  • "IE = 11"
  • "IE = EmulateIE11"
  • "IE = 10"
  • "IE = EmulateIE10"
  • "IE = 9"
  • "IE = EmulateIE9
  • "IE = 8"
  • "IE = EmulateIE8"
  • "IE = 7"
  • "IE = EmulateIE7"
  • "IE = 5"

Pour tenter de comprendre ce que chacun signifie, voici les définitions fournies par Microsoft:

Internet Explorer prend en charge un certain nombre de modes de compatibilité de document qui activent différentes fonctionnalités et peuvent affecter la manière dont le contenu est affiché:

  • Le mode Edge indique à Internet Explorer d'afficher le contenu dans le mode le plus élevé disponible. Avec Internet Explorer 9, cela équivaut au mode IE9. Si une version ultérieure d'Internet Explorer prend en charge un mode de compatibilité supérieur, les pages définies en mode Edge apparaissent dans le mode le plus élevé pris en charge par cette version. Ces mêmes pages apparaissent toujours en mode IE9 lorsqu'elles sont affichées avec Internet Explorer 9. Internet Explorer prend en charge un certain nombre de modes de compatibilité de document qui activent différentes fonctionnalités et peuvent affecter la manière dont le contenu est affiché:

  • Le mode IE11 fournit le support le plus élevé disponible pour les normes industrielles établies et émergentes, y compris HTML5, CSS3 et autres.

  • Le mode IE10 fournit le support le plus élevé disponible pour les normes industrielles établies et émergentes, y compris HTML5, CSS3 et autres.

  • Le mode IE9 fournit la meilleure prise en charge disponible pour les normes industrielles établies et émergentes, y compris les spécifications de niveau 3 des feuilles de style en cascade du W3C (brouillon), les spécifications HTML5 (Scalable Vector Graphics) 1.0, etc. [Note de l'éditeur: IE 9 ne prend pas en charge les animations CSS3].

  • Le mode IE8 prend en charge de nombreuses normes établies, y compris la spécification de niveau 2.1 des feuilles de style en cascade du W3C et l'API des sélecteurs W3C; il fournit également une prise en charge limitée de la spécification de niveau 3 des feuilles de style en cascade du W3C (version de travail) et des autres normes émergentes.

  • Le mode IE7 affiche le contenu comme s'il était affiché en mode standard par Internet Explorer 7, que la page contienne ou non une directive.

  • Le mode Emuler IE9 indique à Internet Explorer d’utiliser la directive pour déterminer le rendu du contenu. Les directives en mode standard sont affichées en mode IE9 et les directives en mode quirks en mode IE5. Contrairement au mode IE9, le mode Emulate IE9 respecte la directive.

  • Le mode Emuler IE8 indique à Internet Explorer d'utiliser la directive pour déterminer le rendu du contenu. Les directives en mode standard sont affichées en mode IE8 et les directives en mode quirks en mode IE5. Contrairement au mode IE8, le mode Emulate IE8 respecte la directive.

  • Le mode Emuler IE7 indique à Internet Explorer d'utiliser la directive pour déterminer le rendu du contenu. Les directives du mode Standard sont affichées en mode Internet Explorer 7 et les directives du mode quirks en mode IE5. Contrairement au mode IE7, le mode Emulate IE7 respecte la directive. Pour de nombreux sites Web, il s'agit du mode de compatibilité préféré.

  • Le mode IE5 rend le contenu comme s'il était affiché en mode quirks par Internet Explorer 7, ce qui est très similaire à la façon dont le contenu était affiché dans Microsoft Internet Explorer 5.

IE10 REMARQUE: À partir de IE10, le mode quirks se comporte différemment des versions précédentes du navigateur. Dans IE9 et les versions antérieures, le mode quirks limitait la page Web aux fonctionnalités prises en charge par IE5.5. Dans IE10, le mode quirks est conforme aux différences spécifiées dans la spécification HTML5.

Personnellement, je choisis toujours la balise méta http-equiv="X-UA-Compatible" content="IE=Edge", car les anciennes versions contiennent beaucoup de bogues et je ne veux pas que IE décide de passer en "mode de compatibilité" et d'afficher mon site sous IE7 vs. IE8 ou 9. Je préfère toujours la dernière version d'IE.

IE11

De Microsoft :

À partir de IE11, le mode Edge est le mode de document préféré; il représente le support le plus élevé pour les normes modernes disponibles pour le navigateur.

Utilisez la déclaration de type de document HTML5 pour activer le mode Edge:

<!doctype html>

Le mode Edge a été introduit dans Internet Explorer 8 et a été disponible dans chaque version ultérieure. Notez que les fonctionnalités prises en charge par le mode Edge sont limitées à celles prises en charge par la version spécifique du navigateur qui rend le contenu.

À partir de IE11, les modes de document sont obsolètes et ne doivent plus être utilisés, sauf de manière temporaire. Assurez-vous de mettre à jour les sites qui reposent sur des fonctionnalités et des modes de document hérités afin de refléter les normes modernes.

Si vous devez cibler un mode de document spécifique pour que votre site fonctionne pendant que vous le retravaillez afin de prendre en charge les normes et fonctionnalités modernes, sachez que vous utilisez une fonctionnalité de transition, qui pourrait ne plus être disponible dans les versions futures.

Si vous utilisez actuellement l'en-tête compatible x-ua pour cibler un mode de document hérité, il est possible que votre site ne reflète pas la meilleure expérience disponible avec IE11.

Microsoft Edge (remplacement d'Internet Explorer fourni avec Windows 10)

Informations sur la balise méta X-UA-Compatible pour la version "Edge" de IE. De Microsoft :

Présentation du mode de document Edge "vivant"

Comme nous l'avions annoncé en août 2013, nous déconseillons les modes de document à partir d'IE11. Avec nos dernières mises à jour de plate-forme, le besoin de modes de document hérités est principalement limité aux applications Web héritées d'entreprise. Avec les nouvelles modifications architecturales, ces modes de document hérités seront isolés des modifications apportées au mode Edge "vivant", ce qui contribuera à garantir un niveau de compatibilité beaucoup plus élevé pour les clients qui dépendent de ces modes et nous permet d'avancer encore plus rapidement dans les améliorations apportées à Edge . IE respectera toujours les modes de document servis par les sites intranet, les sites figurant dans la liste Affichage de compatibilité et, en cas d'utilisation avec le mode Entreprise uniquement.

Les sites Internet publics seront rendus avec la nouvelle plate-forme en mode Edge (en ignorant la compatibilité X-UA). Notre objectif est que Edge soit le mode de document "vivant" à partir de maintenant et qu'aucun autre mode de document ne soit introduit à l'avenir.

Les modifications apportées dans Microsoft Edge ne prenant plus en charge les modes de document dans la plupart des cas, Microsoft dispose d'un outil permettant d'analyser votre site pour vérifier s'il contient du code incompatible avec Edge.

Chrome = 1 Info pour IE

Il existe également chrome=1 que vous pouvez utiliser ou utiliser conjointement avec l’une des options ci-dessus, telle que: <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">. chrome=1 est destiné au cadre Chrome de Google, défini comme suit:

Google Chrome Frame est un plug-in de navigateur open source. Les utilisateurs sur lesquels le plug-in est installé ont accès aux technologies Web ouvertes de Google Chrome et au moteur JavaScript rapide lorsqu'ils ouvrent des pages dans le navigateur.

Google Chrome Frame améliore de manière transparente votre navigation dans Internet Explorer. Il affiche les sites Google Chrome Frame utilisant la technologie de rendu de Google Chrome, ce qui vous donne accès aux dernières fonctionnalités HTML5, ainsi qu'aux performances et aux fonctionnalités de sécurité de Google Chrome, sans pour autant interrompre l'utilisation habituelle de votre navigateur.

Lorsque Google Chrome Frame est installé, le Web s'améliore sans que vous ayez à y penser.

Mais pour que ce plug-in fonctionne, vous devez utiliser chrome=1 dans la balise méta X-UA-Compatible.

Plus d'informations sur Chrome Vous pouvez trouver le cadre ici .

Remarque:Google Chrome Le cadre ne fonctionne que pour IE6 à IE9 et a été retiré le 25 février 2014. Plus d'infos peut être trouvé ici . Merci à @mck pour le lien.

Validation:

HTML5:

La page ne sera validée à l'aide du validateur W3 que si vous utilisez <meta http-equiv="X-UA-Compatible" content="IE=Edge">. Pour les autres valeurs, l'erreur suivante sera générée: A meta element with an http-equiv attribute whose value is X-UA-Compatible must have a content attribute with the value IE=Edge. En d'autres termes, si vous avez IE=Edge,chrome=1, il ne sera pas validé. J'ignore complètement cette erreur car les navigateurs modernes ignorent simplement cette ligne de code.

Si vous devez avoir un code complètement valide, envisagez de le faire au niveau du serveur en définissant l'en-tête HTTP. Remarque: Microsoft indique: If both of these instructions are sent (meta and HTTP), the developer's preference (meta element) takes precedence over the web server setting (HTTP header). Voir la réponse de olibre ou la réponse de de bitinn pour plus de détails sur la définition d'un en-tête HTTP.

XHTML

Il n’ya pas de problème de validation lorsqu’on utilise <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> tant que la balise est correctement fermée (c.-à-d. /> vs >).

Twitter Bootstrap

Cette balise a été vivement recommandée par l'équipe Bootstrap _ depuis au moins 2014, et Bootlint , le linter créé par l'équipe twbs continue de lancer une warning lorsque la balise est omise. Le linter distingue les avertissements des erreurs et, en tant que tel, la sévérité de l’omission de cette balise peut être considérée comme mineure.


Pour plus d'informations sur X-UA-Compatible, voir Microsoft , Site Web définissant la compatibilité des documents .

Pour plus d'informations sur ce que IE prend en charge, consultez caniuse.com .

Pour plus d'informations sur les exigences de Twitter Bootstrap, voir la page wiki du projet bootlint .

1613
L84

Utiliser _content=_ "IE=Edge,chrome=1" Ignorer les autres modes _X-UA-Compatible_

_<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
                                   -------------------------- 
_
  • Aucune icône de compatibilité
    La barre d'adresse IE9 n'apparaît pas bouton Affichage de la compatibilité
    et la page ne présente pas non plus un fouillis de menus, d’images et de zones de texte déplacés.

  • Caractéristiques
    Cette balise META est obligatoire pour activer javascript::JSON.parse() sur IE8.
    (même lorsque _<!DOCTYPE html>_ est présent)

  • Exactitude
    Le rendu/L’exécution de HTML/CSS/JavaScript moderne est plus valide (plus agréable).

  • Performance
    Le moteur de rendu Trident devrait fonctionner plus rapidement dans son mode Edge .


Usage

Dans votre HTML

_<!DOCTYPE html> 
<html> 
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
_
  • _IE=Edge_ signifie que IE devrait utiliser la dernière version (Edge) de son moteur de rendu
  • chrome=1 signifie que IE doit utiliser le moteur de rendu Chrome s'il est installé.

Ou mieux dans la configuration de votre serveur Web:
(voir aussi le réponse de RiaD )

  • Apache tel que proposé par pixeline

    _<IfModule mod_setenvif.c>
      <IfModule mod_headers.c>
        BrowserMatch MSIE ie
        Header set X-UA-Compatible "IE=Edge,chrome=1" env=ie
      </IfModule>
    </IfModule>
    <IfModule mod_headers.c>
      Header append Vary User-Agent
    </IfModule>
    _
  • Nginx tel que proposé par Stef Pause

    _server {
      #...
      add_header X-UA-Compatible "IE=Edge,chrome=1";
    }
    _
  • Vernis procuration proposée par Lucas Riutzel

    _sub vcl_deliver {
      if( resp.http.Content-Type ~ "text/html" ) {
        set resp.http.X-UA-Compatible = "IE=Edge,chrome=1";
      }
    }
    _
  • IIS (depuis la v7)

    _<configuration>
      <system.webServer>
         <httpProtocol>
            <customHeaders>
               <add name="X-UA-Compatible" value="IE=Edge,chrome=1" />
            </customHeaders>
         </httpProtocol>
      </system.webServer>
    </configuration>
    _

Microsoft recommande le mode Edge depuis IE11

Comme le remarque Lynda (voir les commentaires), le modifications de compatibilité dans IE11 recommande le mode Edge :

À partir de IE11, le mode Edge est le mode de document préféré; il représente le support le plus élevé pour les normes modernes disponibles pour le navigateur.

Mais la position de Microsoft n’était pas claire. Autre La page MSDN ne recommande pas le mode Edge :

Étant donné que le mode Edge force l’ouverture de toutes les pages en mode standard, quelle que soit la version d’Internet Explorer, vous pouvez être tenté de l’utiliser pour toutes les pages affichées avec Internet Explorer. Ne le faites pas car l'en-tête _X-UA-Compatible_ est uniquement pris en charge à partir de Windows Internet Explorer 8.

Au lieu de cela, Microsoft a recommandé l’utilisation de _<!DOCTYPE html>_:

Si vous souhaitez que toutes les versions prises en charge d'Internet Explorer ouvrent vos pages en mode standard, utilisez la déclaration de type de document HTML5 [...]

Comme Ricardo explique (dans les commentaires ci-dessous), tout DOCTYPE (HTML4, XHTML1 ...) peut être utilisé pour déclencher le mode Standards, et pas seulement le format DOCTYPE de HTML5. L'important est de toujours avoir un DOCTYPE dans la page.

Clara Onager a même remarqué dans une ancienne version de Spécification des modes de document hérités :

Le mode Edge est destiné à des fins de test uniquement; ne l'utilisez pas dans un environnement de production.

C'est tellement déroutant que sman Y pensait Clara Onager parlait de:

L'exemple [...] est fourni uniquement à titre d'illustration; ne l'utilisez pas dans un environnement de production.

_<meta http-equiv="X-UA-Compatible" content="IE=7,9,10" >
_

Bien ... Dans la suite de cette réponse, je donne plus d'explications sur les raisons pour lesquelles utiliser _content="IE=Edge,chrome=1"_ est une bonne pratique en production.


Histoire

Pendant de nombreuses années (2000 à 2008), la part de marché de IE était supérieure à 80% . Et IE v6 était considéré comme un de facto standard (80% à 97% de part de marché en 20 , 2004, 2005 et 2006 pour IE6 uniquement, part de marché accrue avec toutes les IE versions).

Comme IE6 ne respectait pas normes Web , les développeurs devaient tester leur site Web avec IE6. Cette situation était intéressante pour Microsoft (MS), car les développeurs Web devaient acheter des produits MS (par exemple, IE ne peut être utilisé sans Windows). ), et il était plus rentable de rester non conforme (c’est-à-dire que Microsoft voulait devenir le standard à l’exclusion des autres sociétés).

Par conséquent, beaucoup de sites étaient uniquement conformes à IE6 et, comme IE n'était pas conforme à la norme Web, tous ces sites Web n'étaient pas bien rendus sur les navigateurs conformes à la norme. Pire encore, beaucoup de sites ne requièrent que IE .

Cependant, à ce moment-là, Mozilla a commencé le développement de Firefox en respectant autant que possible toutes les normes Web (d'autres navigateurs ont été implémentés pour rendre les pages, comme le fait IE6). Alors que de plus en plus de développeurs Web souhaitaient utiliser les nouvelles fonctionnalités des normes Web, de plus en plus de sites Web étaient davantage pris en charge par Firefox que par IE.

Lorsque IE le partage du marché diminuait, MS s'est rendu compte que rester incompatible n'était pas une bonne idée. Par conséquent, MS a commencé à publier la nouvelle version IE (IE8/IE9/IE10) respectant de plus en plus les normes Web.


La question incompatible avec le Web

Mais le problème concerne tous les sites Web conçus pour IE6: Microsoft ne pouvait pas publier de nouvelles versions IE incompatibles avec ces anciens sites Web conçus par IE6. Au lieu de déduire la version IE d'un site Web créé, MS a demandé aux développeurs d'ajouter des données supplémentaires (_X-UA-Compatible_) dans leurs pages.

IE6 est toujours utilisé en 2016

De nos jours, IE6 est toujours utilisé (0,7% en 2016) (4,5% en janvier 2014), et certains sites Web sont toujours conformes à IE6. Certains sites Web/applications intranet sont testés avec IE6. Certains sites Web intranet ne fonctionnent à 100% que sur IE6. Ces sociétés/départements préfèrent différer le coût de la migration: autres priorités, personne ne sait plus comment le site/l'application a été mis en œuvre, le propriétaire de l'ancien site/application a fait faillite ...

La Chine représente 50% de l'utilisation d'IE6 en 2013, mais cela pourrait changer dans les prochaines années car la distribution de Linux en chinois est en cours de diffusion .

Ayez confiance en vos compétences Web

Si vous essayez de respecter le standard Web, vous pouvez simplement toujours utiliser _http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"_. Pour conserver la compatibilité avec les anciens navigateurs, évitez simplement d'utiliser les dernières fonctionnalités Web: utilisez le sous-ensemble pris en charge par le navigateur le plus ancien que vous souhaitez prendre en charge. Ou, si vous voulez aller plus loin, vous pouvez adopter les concepts suivants: dégradation progressive , amélioration progressive et JavaScript discret . (Vous pouvez également être heureux de lire Que doit considérer un développeur web? .)

Ne vous souciez pas du meilleur rendu de version IE: ce n'est pas votre travail, car les navigateurs doivent être conformes aux normes Web. Si votre site est conforme à la norme et utilise modérément les fonctionnalités les plus récentes, les navigateurs doivent par conséquent être compatibles avec votre site Web .

De plus, comme il existe de nombreuses campagnes pour tuer IE6 ( pas plus de IE6 , campagne MS ), vous éviterez aujourd’hui de gaspiller du temps avec IE test!

Expérience personnelle IE6

En 2009-2012, j'ai travaillé pour une société utilisant IE6 comme navigateur unique officiel autorisé . J'ai dû mettre en place un site intranet pour IE6 uniquement. J'ai décidé de respecter la norme Web, mais en utilisant le sous-ensemble compatible IE6 (HTML/CSS/JS).

C'était difficile, mais lorsque l'entreprise a adopté IE8, le site Web était toujours bien rendu, car j'avais utilisé Firefox et firebug pour vérifier la compatibilité de la norme Web;)

323
olibre

La différence est que si vous spécifiez uniquement la variable DOCTYPE, les paramètres d’affichage de compatibilité d’Internet Explorer sont prioritaires. Par défaut, ces paramètres forcent tous les sites intranet à afficher la compatibilité, indépendamment de DOCTYPE. Il existe également une case à cocher permettant d’utiliser l’Affichage de compatibilité pour tous les sites Web, indépendamment de DOCTYPE.

IE Compatibility View Settings dialog

X-UA-Compatible remplace les paramètres d'affichage de compatibilité, de sorte que la page sera rendue en mode standard quels que soient les paramètres du navigateur. Cela force le mode standard pour:

  • pages intranet
  • les pages Web externes lorsque l'administrateur de l'ordinateur a choisi "Afficher tous les sites Web en mode d'affichage de compatibilité" par défaut - par exemple les grandes entreprises, les gouvernements et les universités
  • lorsque vous vous retrouvez involontairement sur le liste d'affichage de compatibilité Microsoft
  • cas où des utilisateurs ont ajouté manuellement votre site Web à la liste dans les paramètres d'affichage de compatibilité

DOCTYPE seul ne peut pas faire cela; vous vous retrouverez dans l'un des modes d'affichage de compatibilité dans ces cas, indépendamment de DOCTYPE.

Si la balise meta et l'en-tête HTTP sont spécifiés, la balise meta est prioritaire.

Cette réponse est basée sur l'examen des règles complètes permettant de choisir le mode de document dans IE8 , IE9 et IE1 . Notez que regarder la DOCTYPE est le dernier recours pour décider du mode document.

57
andrewdotn

Utilisez-le pour forcer IE à masquer le bouton de compatibilité du navigateur qui vous gêne dans la barre d'adresse:

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
24
George Filippakos

Puisque je ne peux pas ajouter de commentaire à la réponse marquée, je vais simplement poster ceci ici.

En plus de la réponse correcte, vous pouvez effectivement le faire valider. Étant donné que cette balise META est uniquement destinée à IE, vous devez simplement ajouter un IE conditionnel.

<!--[if IE]>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<![endif]-->

Faire cela équivaut à ajouter une autre instruction conditionnelle IE et ne fonctionne que pour IE; aucun autre navigateur ne sera affecté.

23
EMurph78

Je pense que ce diagramme de Microsoft explique tout. Afin de permettre à IE de rendre le contenu,! DOCTYPE doit fonctionner avec la méta-balise compatible X-UA. ! DOCTYPE en soi n'a pas d'incidence sur le changement de IE mode document.

enter image description here

http://ie.Microsoft.com/testdrive/ieblog/2010/Mar/02_HowIE8DeterminesDocumentMode_3.png

15
James Tsai

Juste pour être complet, vous n'avez pas réellement besoin de l'ajouter à votre code HTML (qui est inconnu en HTML5).

Faites cela et ne regardez jamais en arrière (premier exemple pour Apache, deuxième pour nginx)

Header set X-UA-Compatible "IE=Edge,chrome=1"

add_header X-UA-Compatible "IE=Edge,chrome=1";
11
bitinn

Juste une phrase à dire Demandez à Internet Explorer d’utiliser son dernier moteur de rend

<meta http-equiv="x-ua-compatible" content="ie=Edge">
8
Bipon Biswas
<meta http-equiv="X-UA-Compatible" content="IE=Edge">

Pour que cette ligne fonctionne comme prévu, assurez-vous que:

  1. C'est le premier élément juste après <head>
  2. Non commentaires conditionnels sont utilisés avant la balise meta, e. g. sur l'élément <html>

Sinon, certaines versions IE l'ignoreront simplement.

UPDATE

Ces deux règles sont simplifiées mais faciles à mémoriser et à vérifier. Bien que la documentation MSDN indique que vous pouvez mettre un titre et d’autres balises méta avant celle-ci, je ne le recommanderais pas.

Comment le faire fonctionner avec des commentaires conditionnels.

Article intéressant sur l'ordre des éléments dans la tête. (blogs.msdn.com, pour IE)

RÉFÉRENCE

De la documentation MSDN :

Le X-UA-Compatible [...] doit apparaître dans l'en-tête de la page Web (la section HEAD) avant tous les autres éléments, à l'exception de l'élément title et des autres méta-éléments.

7
ToniTornado

si vous utilisez votre site Web sur le même réseau que le serveur, IE préfère passer à mode de compatibilité malgré DOCTYPE.
Ajouter meta http-equiv="X-UA-Compatible" content="IE=Edge"désactive ce comportement indésirable.

4
Łukasz Jakóbiec

C'est littéralement 1 requête Google , mais voici:

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

Compréhension des modes de document existants

Utilisez la valeur suivante pour afficher la page Web en mode Edge, qui correspond au mode le plus standard pris en charge par Internet Explorer, d'Internet Explorer 6 à IE11.

<meta http-equiv="x-ua-compatible" content="IE=Edge"

Notez que cela est fonctionnellement équivalent à l'utilisation du doctype HTML5. Il place Internet Explorer dans le mode de document pris en charge le plus élevé. Edge most est particulièrement utile pour les sites Web régulièrement mis à jour et dont l’interopérabilité est testée régulièrement entre plusieurs navigateurs, y compris Internet Explorer.

Remarque À partir de IE11, le mode Edge est considéré comme le mode document préféré. (Dans les versions précédentes, cela était considéré comme expérimental.) Pour en savoir plus, voir Les modes de document sont obsolètes. À partir de Windows Internet Explorer 8, certains développeurs Web ont utilisé le méta-élément en mode Edge pour masquer le bouton Affichage de compatibilité dans la barre d'adresse. A partir de IE11, cela n'est plus nécessaire car le bouton a été supprimé de la barre d'adresse. Dans la mesure où il oblige toutes les pages à être ouvertes en mode standard, quelle que soit la version d'Internet Explorer, vous pouvez être tenté d'utiliser le mode Edge pour toutes les pages affichées avec Internet Explorer. Ne faites pas cela, car l'en-tête compatible X-UA n'est pris en charge qu'à partir d'Internet Explorer 8.

Conseil Si vous souhaitez que toutes les versions prises en charge d'Internet Explorer ouvrent vos pages en mode standard, utilisez la déclaration de type de document HTML5, comme indiqué dans l'exemple précédent.

Parmi les résultats de la recherche figure également:

3
Joe Mike

2.1.3.5 Étiquette méta de compatibilité X-UA-Compatibility et en-tête de réponse HTTP

Cette fonctionnalité ne sera implémentée dans aucune version de Microsoft Edge.

<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=Edge" />

Voir https://msdn.Microsoft.com/en-us/library/ff955275 (v = vs.85) .aspx

Oui, je sais que je suis en retard à la fête, mais je n’ai eu que quelques problèmes et discussions, et à la fin, mon chef m'a fait retirer la balise X-UA-Compatible de tous les documents sur lesquels je travaillais.

Si cette information est obsolète ou n'est plus pertinente, corrigez-moi.

2
Shawn Spencer