Ich bin verwirrt über die richtige Methode zum Einfügen typografischer Sonderzeichen (wie Anführungszeichen und Em-Bindestriche) beim Erstellen von Inhalten, die auf einer Webseite angezeigt werden. Ist es besser oder vorzuziehen, die eigentlichen Unicode-Zeichen wie folgt einzugeben:
“Hello, World”
oder um Entitäten für Sonderzeichen zu verwenden:
“Hello, World”
Gibt es Risiken, die mit der Verwendung von beiden verbunden sind (insbesondere das Risiko, dass der Benutzer eine verrückte Zeichenersetzung sieht), oder sind sie wirklich gleichwertig?
Der Nachteil bei der Verwendung von Entitäten ist die Lesbarkeit. Pop-Quiz: Was gibt die folgende Ausgabe aus?
†‹ some text ›
Ohne nachzusehen, hätte ich keine Ahnung gehabt. Selbst wenn Sie dies getan haben, sollten Sie bedenken, dass andere, die Ihr Markup lesen, dies möglicherweise nicht tun.
Zum größten Teil gibt es keinen Grund, warum Sie nicht nur das eigentliche Zeichen verwenden sollten. Um Probleme zu vermeiden, stellen Sie sicher, dass Sie überall UTF-8 verwenden . Sie möchten Folgendes sicher sein:
Wann Sie Escapes verwenden sollten
Syntaxzeichen. Es gibt drei Zeichen, die im Inhalt immer als Escapezeichen erscheinen sollten, damit sie nicht mit der Syntax des Markups interagieren. Diese sind Bestandteil der Sprache für alle auf XML basierenden Dokumente und für HTML.
<
(<)>
(>)&
(&)
Jetzt verwenden wir in html5 nicht mehr die ASCII-Codierung, sondern die utf-8. Wenn Sie Ihre Codierung als utf-8 definieren und auch die Datei selbst darin codieren, werden Sie keine Probleme haben. (ein alter Editor kann nicht in utf-8 codieren, aber es gibt viele kostenlose Programme, die dies tun)
Danach, wenn Sie es brauchen, sagen wir für einige Programmieranforderungen, \escapen Sie es.
Jongware
U+2020
. Einer der festen Plätze also? Die anderen 2 sind einfach gewinkelte Zitate, und ich kann mir vorstellen, dass die Leute das auch nachschlagen müssen < 😀>JohnB
†‹ some text ›
Scott
—
oder·
sind. Und die Verwendung von Dingen wie»
oder&
ist ziemlich klar, wenn Sie sie ein paar Mal verwenden. Ich hatte Kunden, die sich über „seltsame Zeichen“ (die ?-Diamanten) beschwerten, wenn ich keine Entitäten verwende. Ich frage mich jetzt, ob es eher ein Problem mit Text ist, der von Microsoft Word bereitgestellt und fälschlicherweise als einfacher Text erneut gespeichert wurde.Scribblemacher
Preston