Kommentar: Immer mehr Websites verwenden HTML5 -Tags, aber die aktuelle Situation ist, dass viele Menschen immer noch IE6, IE7 und IE8 verwenden. Um allen Zuschauern normal zugreifen zu können, sind die folgenden beiden Lösungen verfügbar
Immer mehr Websites verwenden HTML5 -Tags, aber die aktuelle Situation ist, dass viele Menschen immer noch IE6, IE7 und IE8 verwenden. Um allen Zuschauern normal zugreifen zu können, sind die Lösungen wie folgt:1. Erstellen Sie mehrere Vorlagensätze für die Website und beurteilen Sie das Programm, um die Benutzer-Agent zu beurteilen, um verschiedene Seiten für verschiedene Browser-Benutzer wie Youku anzuzeigen.
2. Verwenden Sie JavaScript, um HTML -Tags zu unterstützen, die von Browsern unterstützt werden und HTML5 nicht unterstützen.
Eine bessere Lösung für den IE ist HTML5shiv. HTNL5SHIV löst hauptsächlich das Problem, dass die von HTML5 vorgeschlagenen neuen Elemente von IE6-8 nicht erkannt werden. Diese neuen Elemente können nicht als übergeordnete Knoten verpackt werden und können den CSS -Stil nicht anwenden. Um CSS -Stile auf unbekannte Elemente anzuwenden, können Sie dies erreichen, indem Sie ein Dokument ausführen. Createelement (ElementName). HTML5SHIV wird basierend auf diesem Prinzip erstellt.
Die Verwendung von HTML5shiv ist sehr einfach. Wenn man bedenkt, dass IE9 HTML5 unterstützt, müssen Sie dem Seitenkopf nur den folgenden Code hinzufügen:
<!-[wenn lt dh 9]-> <script src = ""> </script> <!-[endif]->
HTML5SHIV Offizielle Website:
Hier sind einige Ergänzungen:
Natürlich einschließlich meines Blogs. In Bezug auf HTML5 muss ich den IE erwähnen. Als Mainstream -Browserhersteller wie Apple, Google, Opera und Mozilla aktiv an der Formulierung und Förderung der neuen Version der HTML -Standards teilnahmen, verachtete Microsoft die HTML 5 -Spezifikation. Microsoft erklärte jedoch kürzlich, dass es HTML 5 in IE unterstützen würde, so dass IE8 und die folgenden HTML5 -Tags bisher nicht unterstützen können. Aber bei SitePoint fand ich einen Weg, IE -Unterstützung HTML5 zu machen.
Das Folgende ist ein Beispiel, das in IE 8 vor der Verarbeitung angezeigt wird:
Um IE (einschließlich IE6) zu unterstützen, die HTML5 -Elemente unterstützen, müssen wir dem HTML -Header das folgende JavaScript hinzufügen. Dies ist ein einfaches Dokument. Createelement Deklaration, die bedingte Anmerkungen verwendet, um entsprechende Knoten im Objekt für den IE zu erstellen.
<!-[wenn dh]>
<Script>
document.createelement ("Header");
Dokument.Createelement ("Fußzeile");
document.createelement ("nav");
document.createelement ("article");
document.CreateElement ("Abschnitt");
</script>
<! [endif]->
Nach dem Hinzufügen des obigen Codes lautet der in IE8 angezeigte Effekt wie folgt:
Der JavaScript -Code zum Erstellen von Knoten im SitePoint -Beispiel scheint zu aufgebläht zu sein, und der in Smokemagazin bereitgestellte Code scheint prägnanter zu sein.
Die Demonstration ist wie folgt
<!-[wenn dh]>
<Script>
(function () {if (!/*@cc_on!@*/0) return; var e = "Header, Fußzeile, Navigation, Artikel, Abschnitt" .Split (','), i = E.Length; while (i-) {document.createelement (e [i])}}) () () () () (i-) {document.create (e [i])}}) () () () () () () ()}}) () () () () () () (e [i])}) () ()
</script>
<! [endif]->
HTML5 manifestiert sich standardmäßig als Inline -Elemente. Beim Verlegen dieser Elemente müssen wir sie mit CSS manuell in Blockelemente umwandeln, wie im folgenden Beispiel gezeigt:
Header, Fußzeile, NAV, Abschnitt, Artikel {
Anzeige: Block;
}