Ich bin mir ziemlich sicher, dass <![CDATA[...]]>
Abschnitte in XHTML5 verwendet werden können, aber was ist mit HTML5?
Ich bin mir ziemlich sicher, dass <![CDATA[...]]>
Abschnitte in XHTML5 verwendet werden können, aber was ist mit HTML5?
Antworten:
Die CDATA
Struktur ist überhaupt nicht wirklich für HTML, sondern für XML.
Menschen verwenden sie manchmal in HTML in script
Tags, da sie bestimmte Sonderzeichen nicht mehr umgehen müssen. Dies ist jedoch keineswegs erforderlich (entweder für HTML 4 oder 5).
Edit: Dies ist , wo wir das wirklich schimmelig alte Dose Würmer öffnen von 2002 darüber , ob Sie senden XHTML als text/html
oder als application/xhtml+xml
wie du bist „angeblich“ zu :-)
CDATA
innerhalb eines pre
Tags verwendet werden, damit ich nicht alle meine spitzen Klammern reparieren muss?
Von derselben Seite @pst verlinkt mit :
Elementspezifisches Parsen für
script
undstyle
Tags , Anleitung zur XHTML-HTML-Kompatibilität : "Der folgende Code mit Escapezeichen kann sicherstellen, dass Skript- und Stilelemente sowohl in XHTML als auch in HTML funktionieren, einschließlich älterer Browser."
Maximale Abwärtskompatibilität:
<script type="text/javascript"><!--//--><![CDATA[//><!--
...
//--><!]]></script>
Einfachere Version, irgendwie inkompatibel mit "viel älteren Browsern":
<script>//<![CDATA[
...
//]]></script>
So CDATA
kann in HTML5 verwendet werden, und es ist in der empfohlenen Guidance für XHTML-HTML - Kompatibilität . Dies ist nützlich für mehrsprachige HTML / XML / XHTML-Seiten , die während der Entwicklung als XML erstellt und analysiert werden, aber für eine bessere browserübergreifende Kompatibilität als HTML5 dienen. Polyglot-Seiten haben ihre Vorteile , und ich habe sie selbst verwendet, da das Debuggen von XML / XHTML5 viel einfacher ist. Google Chrome zum Beispiel einen Fehler für ungültige XML / XHTML5 (einschließlich zum Beispiel werfen Charakter zu entkommen ), während die gleiche Seite diente als HTML5 wird „nur Arbeit“ aka „wahrscheinlich Arbeit“.
Die Spezifikation scheint dieses Problem zu klären. Skript- und Stil-Tags gelten als "Rohtextelemente". CDATA wird für sie nicht benötigt oder erlaubt. CDATA wird nur mit "fremden Inhalten" verwendet - dh MathML und SVG. Beachten Sie, dass das Skript-Tag einige Einschränkungen aufweist. Grundsätzlich können Sie so etwas nicht var x = '</script>'
einfügen, da es das Tag schließt und wie in seiner Antwort angegeben pst aufgeteilt werden muss. http://www.w3.org/TR/html5/syntax.html#cdata-rcdata-restrictions
Vielleicht sehen Sie: http://wiki.whatwg.org/wiki/HTML_vs._XHTML
<! [CDATA [...]]> ist ein falscher Kommentar.
Ist in HTML <script>
bereits geschützt - deshalb muss es manchmal so geschrieben werden a = "<" + "/script>"
, um den Browser nicht zu verwirren. Beachten Sie, dass der Code außerhalb einer CDATA in HTML gültig ist .