28 votes

Forcer IE10 à s'exécuter dans la vue de compatibilité IE10?

J'ai une application qui est cassé dans IE10, mais fonctionne très bien dans IE10 l'Affichage de Compatibilité. Une rapide recherche sur google dans le

<meta http-equiv="X-UA-Compatible" content="IE=8">
<!-- plus variations such as emulate, quirks, 7, 8, 9 --->

la balise. Certains MS documentation sur l'étiquette est ici. Si vous appuyez sur la touche F12, vous pouvez voir qu'il change le mode de document. J'en ai besoin pour changer le Mode du Navigateur pour Internet Explorer 10 Affichage de Compatibilité. Est-il une balise qui va le faire?

enter image description here

Mise à JOUR Je dois mentionner que j'ai essayé toutes les suivantes doctypes et aucune de ces travaux. Je pense que la seule façon d'obtenir que cela fonctionne dans IE10 est d'utiliser le mode de Compatibilité.

<!--
    <!DOCTYPE html>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
    TRIED NO DOCTYPE AT ALL TOO
-->

16voto

Patrick D'Souza Points 2460

Si vous souhaitez définir le mode de compatibilité dans le navigateur lui-même et pas dans le html, procédez de la manière suivante

  1. Ouvrir IE 10
  2. Appuyez sur la Touche ALT pour faire apparaître la IE de la barre de menu
  3. Cliquez sur le menu Outils
  4. Cliquez sur paramètres d'affichage de compatibilité.
  5. Clique cochez la case; afficher tous les sites web dans affichage de compatibilité ou
  6. Ajoutez uniquement les sites désirés à l'affichage de compatibilité

Comme indiqué dans l'image ci-dessous. Le site web devrait alors s'ouvrir avec IE 10 affichage de Compatibilité.

enter image description here

10voto

Pouki Points 1061

Tu peux essayer :

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

Tout comme vous avez essayé auparavant, mais attention:

Il semble que la balise compatible X-UA doit être la première balise de la section <head>

Si cette conclusion est correcte, je pense qu'elle n'est pas documentée dans les blogs / msdn de Microsoft (et si elle est documentée, elle ne ressort pas assez bien des documents). S'assurer qu'il s'agissait de la première balise META dans l'IE9 forcé pour passer en mode IE8 avec succès

6voto

Rick Points 51

J'ai eu exactement le même problème, c' - "meta http-equiv="X-UA-Compatible" content="IE=7">" fonctionne très bien dans IE8 et IE9, mais pas dans IE10. Il y a un bug dans le serveur de fichiers de définition de navigateur fourni avec .NET 2.0 et .NET 4, à savoir qu'ils contiennent des définitions pour une certaine gamme de versions de navigateur. Mais les versions de certains navigateurs (IE 10) ne sont pas à l'intérieur de ces fourchettes de plus. Par conséquent, ASP.NET les voit comme des inconnus, les navigateurs et les paramètres par défaut à une baisse de niveau de la définition, qui a certains inconvénients, comme ça il ne prend pas en charge les fonctionnalités comme le JavaScript.

Merci à Scott, Hanselman pour ce correctif.

Voici le lien -

http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

Ce MS PK correctif ajoute simplement des fichiers manquants à l'asp.net sur votre serveur. Je l'ai installé et redémarré mon serveur et il fonctionne maintenant parfaitement. J'aurais pensé que MS aurait donné ce correctif à une distribution plus large.

Rick

5voto

Fredashay Points 108

J'ai eu le même problème. Le problème est un bug dans MSIE 10, afin de dire aux gens de résoudre leurs problèmes n'est pas utile. Il n'est ni raconter aux visiteurs de votre site, ajouter votre site à l'affichage de compatibilité, bleh. Dans mon cas, le problème est que le code suivant affiche pas de texte:

document.write ('<P>'); 
document.write ('Blah, blah, blah... ');
document.write ('</P>');

Après beaucoup d'essais et d'erreurs, j'ai déterminé que la suppression de l' <P> et </P> les balises causé, le texte s'affiche correctement sur la page (et donc, le problème EST avec le mode de document plutôt qu'en mode navigateur, au moins dans mon cas). Retirer les balises <P> quand userAgent est MSIE n'est pas un "fix" je veux mettre dans mes pages.

La solution, comme d'autres l'ont dit, c'est:

<!DOCTYPE HTML whatever doctype you're using....> 
<HTML>
 <HEAD>
  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
  <TITLE>Blah...

Oui, la balise meta doit être la PREMIÈRE balise après la TÊTE.

Ok génies, tout le monde downrate ma réponse maintenant, parce que je ne suis pas dans votre clique...

4voto

Jonathan Myers Points 331

Bien que vous deviez corriger votre site pour qu'il fonctionne sans affichage de compatibilité, essayez de mettre la balise Meta X-UA-Compatible comme première chose après l'ouverture <head> , avant le titre

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X