Commentaire: De plus en plus de sites commencent à utiliser des balises HTML5, mais la situation actuelle est que de nombreuses personnes utilisent toujours IE6, IE7 et IE8. Afin de permettre à toutes les téléspectateurs d'accéder normalement, les deux solutions suivantes sont disponibles
De plus en plus de sites commencent à utiliser des balises HTML5, mais la situation actuelle est que de nombreuses personnes utilisent toujours IE6, IE7 et IE8. Afin de permettre à toutes les téléspectateurs d'accéder normalement, les solutions sont les suivantes:1. Créez plusieurs ensembles de modèles pour le site Web et utilisez le programme pour juger de l'utilisateur-agent pour afficher différentes pages pour différents utilisateurs de navigateurs, tels que Youku.
2. Utilisez JavaScript pour créer des balises HTML prises en charge par des navigateurs qui ne prennent pas en charge HTML5.
Une meilleure solution pour IE est HTML5SHIV. HTNL5SHIV résout principalement le problème que les nouveaux éléments proposés par HTML5 ne sont pas reconnus par IE6-8. Ces nouveaux éléments ne peuvent pas être enveloppés en tant que nœuds parents et ne peuvent pas appliquer le style CSS. Pour appliquer les styles CSS sur des éléments inconnus, vous pouvez le réaliser en exécutant Document.CreateElement (élémentName). HTML5SHIV est créé en fonction de ce principe.
L'utilisation de HTML5SHIV est très simple. Étant donné que IE9 prend en charge HTML5, il vous suffit d'ajouter le code suivant à la tête de page:
<! - [Si lt ie 9] -> <script src = ""> </cript> <! - [endif] ->
Site officiel HTML5SHIV:
Voici quelques ajouts:
Bien sûr, y compris mon blog. En ce qui concerne HTML5, je dois mentionner IE. Lorsque les fabricants de navigateurs traditionnels tels qu'Apple, Google, Opera et Mozilla ont activement participé à la formulation et à la promotion de la nouvelle version des normes HTML, Microsoft a dédaigné la spécification HTML 5. Cependant, Microsoft a récemment déclaré qu'il prendrait en charge HTML 5 dans IE, de sorte que IE8 et les suivants ne peuvent pas prendre en charge les balises HTML5 jusqu'à présent. Mais sur SitePoint, j'ai trouvé un moyen de faire du support IE HTML5.
Ce qui suit est un exemple affiché dans IE 8, avant le traitement:
Pour faire en sorte que IE (y compris IE6) prenne en charge les éléments HTML5, nous devons ajouter le JavaScript suivant à l'en-tête HTML. Il s'agit d'une déclaration de document simple.
<! - [Si c'est-à-dire]>>
<cript>
Document.CreateElement ("En-tête");
Document.CreateElement ("Footer");
document.CreateElement ("NAV");
Document.CreateElement ("Article");
document.CreateElement ("Section");
</cript>
<! [endif] ->
Après avoir ajouté le code ci-dessus, l'effet affiché dans IE8 est le suivant:
Le code JavaScript pour la création de nœuds dans l'exemple de point de point semble être trop gonflé, et le code fourni dans Smokemagazine semble plus concis.
La démonstration est la suivante
<! - [Si c'est-à-dire]>>
<cript>
(function () {if (! / * @ cc_on! @ * / 0) return; var e = "henter, pied, nav, article, section" .split (','), i = e.length; while (i -) {document.createlement (e [i])}}) () ()
</cript>
<! [endif] ->
HTML5 se manifeste par défaut en tant qu'éléments en ligne. Lors de la disposition de ces éléments, nous devons les convertir manuellement en éléments de bloc à l'aide de CSS, comme indiqué dans l'exemple suivant:
En-tête, pied de page, navigation, section, article {
Affichage: bloc;
}