Existe-t-il un moyen de forcer IE8 en mode de compatibilité IE7 en utilisant .NET ou Javascript?Forcer IE8 en mode Compatibilité IE7
Répondre
Si vous ajoutez ceci à vos balises meta:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
IE8 rendre la page comme IE7.
Vous avez raison - mais essayez de l'ajouter immédiatement après l'ouverture de la balise
. J'ai eu des problèmes quand c'était plus bas sur la page. –Que faire si je ne dois pas ajouter cette ligne à chaque page ASPX sur mon site. Puis-je le faire avec IIS? – Bryan
@Brian: Non. C'est pourquoi nous utilisons des pages maîtres. – NotMe
Je l'aurais peut-être trouvé maintenant. http://blog.lroot.com/articles/the-ie7-compatibility-tag-force-ie8-to-use-the-ie7-rendering-mode/
Le site dit en ajoutant cette balise meta:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
ou d'ajouter ceci à .htaccess
Header set X-UA-Compatible: IE=EmulateIE7
Merci pour le htaccess un! – Irfan
son encore plus simple que cela. En utilisant HTML, vous pouvez simplement ajouter cette balise META à votre page (première chose sur la page):
<meta http-equiv="X-UA-Compatible" content="IE=7" />
Si vous vouliez faire using.net, il vous suffit d'envoyer votre demande http avec cette méta-informations dans le entête. Cela nécessiterait un rafraîchissement de page pour fonctionner.
Vous pouvez également regarder une question similaire ici: Compatibility Mode in IE8 using VBScript
Il est an HTTP header vous pouvez définir qui forcera IE8 à utiliser le mode IE7-compatibilité.
Je n'ai pas réussi à faire fonctionner la balise meta, mais l'ajout de cet en-tête a fait l'affaire. Merci! – swatkins
Une note à ceci:
émulation IE 8.0s promet que pour afficher la page même. Il existe des différences subtiles qui peuvent entraîner la rupture des fonctionnalités. J'ai récemment eu un problème avec ça. Où IE 7.0 utilise une fonction wrapper javascript appelée "anonymous()" dans IE 8.0 le wrapper a été nommé différemment.
Alors ne vous attendez pas à ce que des choses comme JavaScript "fonctionnent", car vous activez l'émulation.
L'écriture de code dépendant du "nom" d'une fonction anonyme n'est pas une dépendance fiable à prendre, quelle que soit la version du navigateur. – EricLaw
un plus si vous voulez changer IE 8 page rendu dans IE 8 mode standard
<meta http-equiv="X-UA-Compatible" content="IE=100" /> <!-- IE8 mode -->
Vous pouvez le faire dans le web.config
<httpProtocol>
<customHeaders>
<add name="X-UA-Compatible" value="IE=7"/>
</customHeaders>
</httpProtocol>
J'ai de meilleurs résultats avec cette plus les solutions ci-dessus. Je ne sais pas pourquoi cela n'a pas été donné comme une solution. :)
+1 Bonne solution, si vous utilisez IIS7 - http://www.iis.net/ConfigReference/system.webServer/httpProtocol –
Excellente solution lorsque vous ne pouvez pas modifier le contenu de la page ou modifier directement les en-têtes de page . –
Je pense que les en-têtes HTTP remplacent toutes les balises META, donc elles devraient être la solution préférée si vous avez l'option. – Matthew
Cela peut se faire dans IIS: http://weblogs.asp.net/joelvarty/archive/2009/03/23/force-ie7-compatibility-mode-in-ie8-with-iis-settings.aspx
Lire les commentaires ainsi: mercredi, 01 Avril, 2009 08:57 par John Moore
Un suivi rapide. Cela a bien fonctionné pour mon site tant que j'utilise la valeur IE = EmulateIE7. En essayant d'utiliser IE = 7, mon site a essentiellement été suspendu lors de son exécution sur IE8.
mon code a cette balise
meta http-equiv = "X-UA-Compatible" content = "IE = 7" />
est-il un moyen où je peux sauter cette balise et encore les mises en page s'affichent bien et bien en utilisant cette balise l'affichage fonctionnera jusqu'à IE 7 mais je veux l'exécuter dans d'autres versions ...
Aussi, puis-je accomplir cela en utilisant les paramètres IIS? – Bryan
Je suppose que je pourrais voir la valeur dans ce pour les pages anciennes, mais s'il vous plaît ne créez pas de nouvelles pages qui dépendent de IE7 ... laisser la bête mourir. –
IE8 a des bugs que IE7 n'a pas et qui disparaissent lors du passage en mode de compatibilité: http://stackoverflow.com/questions/1070178/why-does-ie8-add-bottom-border-on-my-image- anchor-tag Mon site est affecté par ce bogue, et je préfère dire à IE8 de l'afficher correctement comme IE7 et tous les autres navigateurs en ajoutant une ligne à mon fichier .htaccess, plutôt que d'ajouter une solution de contournement spécifique à mon navigateur. pages réelles. –