2012-05-05 22 views
31

Aus offensichtlichen Gründen kann die linke spitze Klammer nicht wörtlich in HTML-Text verwendet werden. Der Status der rechten Klammer ist nicht ganz so klar. Es funktioniert, wenn ich es versuche, aber natürlich sind Browser notorisch verzeihen von Konstrukten, die nicht streng gültige HTML sind.Rechtwinklige Klammer in HTML

http://www.w3.org/TR/html4/charset.html#h-5.4 scheint zu sagen, es ist gültig, obwohl von älteren Browsern möglicherweise nicht unterstützt wird, aber erwähnt auch in Anführungszeichen gesetzt Attributwerte. Is it necessary to html encode right angle brackets? sagt auch, dass es gültig ist, spricht aber wieder speziell über in Anführungszeichen gesetzte Attributwerte.

Was ist die Antwort für einfache Textabschnitte (Inhalt eines <pre> Elements passiert, dass der Fall, den ich betrachte), und unterscheidet es sich in irgendeiner Weise?

+0

Sie müssen sowieso linken Klammern entkommen. Warum nicht die einfachste und sicherste Sache machen und auch den richtigen Klammern entkommen? –

+0

Weil ich einen Textblock verwalten muss, der aus einer Programmausgabe besteht, die zufällige Klammern enthält, aber nicht links, und dies bestimmt, ob die Wartungsaufgabe Kopieren und Einfügen im Gegensatz zu Kopieren, Einfügen und Suchen/Ersetzen ist. – rwallace

Antwort

56

Das Zeichen „>“ kann als wie Datenzeichen in einer beliebigen Version von HTML verwendet werden, sowohl im Elementinhalt und in einem Attributwert. Dies ergibt sich aus dem Fehlen einer gegenteiligen Angabe in den Spezifikationen.

Es ist oft routinemäßig als &gt; entkommen, die gültig ist, aber aus irgendeinem formellen oder technischen Grund nicht erforderlich ist. Es wird teilweise verwendet, weil Leute davon ausgehen, dass es genauso gebraucht wird, wie das Zeichen "<" maskiert werden muss, teilweise für Symmetrie: Schreiben, sagen wir &lt;code&gt;, kann symmetrischer aussehen als &lt;code>.

Das Zeichen ">" ist das GREATER THAN-Zeichen. Es wird in vielen Kontexten, wie HTML-Markup, als ein Begrenzer einer Art in einer Klammer-ähnlichen Weise verwendet, aber die reellen spitzen Klammern, wie sie in einigen mathematischen Notationen verwendet werden, sind ziemlich verschieden, wie "⟩" U + 27E9 . Wenn Sie spitze Klammern in ein HTML-Dokument einfügen müssen, müssen Sie einige schwerwiegende Probleme beachten, aber sie beziehen sich auf Schriftarten (und Semantik), nicht auf einen möglichen Konflikt mit Markup-signifikanten Zeichen.

+5

Ein Grund, > zu verwenden, ist so, dass Sie es beim Codieren schnell von einem gebrochenen HTML-Element unterscheiden können. Auch bestimmte Redakteure können es als ungültig markieren, unabhängig davon, ob es ist oder nicht. – Sam

1

Rechte Klammern sind innerhalb eines <pre> Tags oder als Text innerhalb eines Elements zulässig.

Es gibt keine Zweideutigkeiten, wenn sie auf diese Weise verwendet werden und Parser haben kein Problem damit, sie zu "verstehen".

Ich persönlich diese nur entkommen, wenn ich sie verwenden müssen, nur links spitzen Klammern passen ...