Question

Je me demande comment voulez-vous empêcher les gens qui utilisent IE 8 de passer en mode de compatibilité?

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

J'ai trouvé cette balise et je pense que ce peuple des forces pour rester en mode IE-8, mais je ne suis pas trop sûr et ne peut pas vérifier que je IE 9.

Si les gens sont en mode IE 9 je les force de ne pas aller dans IE 8 ou IE 7 mode de compatibilité?

J'ai essayé de mettre la ligne dans mon code et je suis allé à IE 9 -> Outils -> Affichage de compatibilité (grisées)

« Compatibilité Afficher les paramètres » n'a pas été grisé et il semble que vous pouvez ajouter le site par là.

Alors que devrait pas désactiver?

Était-ce utile?

La solution

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

devrait forcer votre page à rendre dans les normes IE8. L'utilisateur peut ajouter le site à la liste de compatibilité mais cette balise sera prioritaire.

Un moyen rapide de vérifier serait de charger la page et tapez la barre d'adresse:

javascript:alert(navigator.userAgent) 

Si vous voyez IE7 dans la chaîne, il est le chargement en mode de compatibilité, sinon non.

Autres conseils

Tout ce que vous avez besoin est de forcer désactiver C.M. dans IE - Il suffit de coller ce code (dans IE9 et sous C.M. seront désactivées):

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

Source: http: // twigstechtips .blogspot.com / 2010/03 / css-IE8-meta-tag à disable.html

Cela devrait être suffisant pour forcer un utilisateur IE à abandonner le mode de compatibilité dans une version IE:

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

Cependant, il y a quelques mises en garde devrait être au courant:

  • La balise meta ci-dessus doit être inclus comme la balise première sous <head> . Seule la balise <title> peut être placé au-dessus.

Si vous ne le faites pas, vous obtiendrez une erreur sur IE9 Dev Tools: X-UA-Compatible META tag ignored because document mode is already finalized.

  • Si vous voulez que cette balise pour valider, assurez-vous que vous vous souvenez de fermer la balise meta avec un /> au lieu d'>.

  • A partir de IE11, le mode de bord est le mode de document préféré. Pour soutenir / permettre que, utilisez la déclaration de type de document HTML5 <!doctype html>.

  • Si vous avez besoin de soutien WebFonts sur IE7, assurez-vous d'utiliser <!DOCTYPE html>. Je l'ai testé et constaté que le rendu WebFonts sur IE7 a assez peu fiable lors de l'utilisation <!doctype html>.

L'utilisation de Google Chrome Frame est populaire, mais malheureusement, il va être abandonné ce mois-ci, janvier 2014.

<meta http-equiv="X-UA-Compatible" content="IE=EDGE,chrome=1">

Vaste information connexe ici , qui a été mis à jour.

Si vous utilisez ASP.NET MVC, je l'ai trouvé Response.AddHeader("X-UA-Compatible", "IE=edge,chrome=1") dans un bloc de code dans _Layout très bien fonctionner:

@Code
    Response.AddHeader("X-UA-Compatible", "IE=edge,chrome=1")
End Code
<!DOCTYPE html>
everything else

La réponse donnée par FelixFett a travaillé pour moi. Je le répète:

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

Je l'ai comme la première balise « méta » dans mon code. J'ai ajouté 10 et 11 sont les versions qui sont publiées maintenant pour Internet Explorer.

Je viens de commentaires sur sa réponse, mais je n'ai pas une réputation assez élevé ...

Une autre façon d'y parvenir est dans Apache en mettant les lignes suivantes dans .htaccess dans le dossier racine de votre site Web (ou dans les fichiers de configuration d'Apache).

BrowserMatch "MSIE" isIE
BrowserMatch "Trident" isIE
Header set X-UA-Compatible "IE=edge" env=isIE

Il faut donc que vous avez les modules mod_headers et mod_setenvif activés.

L'en-tête HTTP supplémentaire n'est envoyé aux navigateurs IE, et aucun des autres.

Dans JSF I utilisé:

<h:head>
    <f:facet name="first">
        <meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
    </f:facet>

    <!-- ... other meta tags ... -->

</h:head>

Ajout d'une balise à votre page ne contrôle pas l'interface utilisateur dans le Panneau de configuration Internet (la boîte de dialogue qui apparaît lorsque vous Outils de sélection -> Options). Si vous cherchez à votre page d'accueil qui pourrait être google.com, msn.com, sur: blanc ou example.com, le Panneau de configuration Internet n'a aucun moyen de savoir ce que le contenu de votre page peut être, et il ne téléchargera pas en arrière-plan.

Jetez un oeil à ce document sur MSDN qui a examiné le mode de compatibilité et comment désactiver pour votre site.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top