HTML5 doctype mettant IE9 en mode bizarreries?

101

J'essaie d'obtenir IE9 pour charger ma page avec les normes IE9 ...

J'ai remarqué que j'avais mis <!DOCTYPE HTML>la fichue chose en mode bizarreries ... Ce qui casse à peu près tout sur la page ...

Comment puis-je amener IE à respecter les normes IE9?

Abhishek
la source
1
@EricLaw - Hein? Je ne suis pas ...
Abhishek
Quelle est l'URL de votre page qui reproduit ce problème.
EricLaw
C'est une page de test interne que j'utilise ... Mais nvm, @David_Wick a déjà répondu à la question ... :-)
Abhishek

Réponses:

134

Placement:

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

dans la <head>balise devrait le faire.

David Wick
la source
1
Ouais, ça a fait l'affaire ... Pourriez-vous s'il vous plaît m'expliquer un peu?
Abhishek
8
@Abhishek: les méta éléments n'ont pas besoin d'être explicitement fermés en HTML5 (et historiquement, par rapport aux anciennes spécifications HTML, la fermeture serait en fait invalide).
reisio
4
@reisio - Si vous regardez l'historique, vous verrez qu'il avait initialement laissé le crochet fermant ( >).
Shauna
Doit-il être la première ou la seule balise Meta? Parce qu'il est là et toujours par défaut en mode bizarreries.
DeadlyChambers
2
J'ai découvert que mettre cette balise meta juste après la balise <head> fonctionnera, alors que l'avoir en bas de <head> pourrait ne pas fonctionner, probablement en raison d'autres interférences de contenu.
Paolo Mioni
63

Assurez-vous de ne pas avoir de commentaires HTML avant la déclaration DOCTYPE, sinon cela déclenchera IE9 pour utiliser le mode quirks.

Le simple fait d'avoir <!DOCTYPE html>tout en haut de la page sans rien le précédant devrait suffire à faire en sorte que IE9 utilise le mode standard. Vous ne devriez pas non plus avoir besoin de la balise Meta.

zuallauz
la source
1
@frumbert: sauf que le cas a des commentaires avant la déclaration doctype, donc non.
reisio
sauf que ceux-ci ne sont pas traités comme des commentaires html, ce sont des commentaires conditionnels que IE (aucun) n'interprète comme faisant partie du dom, tandis que les commentaires html (ceux sans crochets) sont traités comme dom et donc derrière des espaces. Dépend du cas, de la version de ie et du doctype utilisé.
frumbert
2
Non, ce n'est pas le cas, zuallauz a dit des commentaires, et vos exemples ont des commentaires (qu'ils soient HTML standard ou non ou interprétés comme souhaité uniquement par IE ou non n'est pas pertinent).
reisio
4

Supprimez tous les commentaires non pris en charge, vérifiez les commentaires pris en charge. Et placez-le dans votre étiquette de tête. La déclaration de type doc doit être la toute première ligne de votre HTML.

Biswajit Chatterjee
la source
0

J'ai dans la tête mentionné dans toutes les pages. Cependant, il s'affiche correctement pour la page d'accueil de toutes les autres pages, la page est toujours rendue en mode dispersé.

avinava basu
la source