Ich möchte einfach die Häkchen (✔) und Kreuzsymbole (✘) in einer HTML-Seite anzeigen, aber es wird entweder als Box oder als Goop angezeigt - offensichtlich etwas, das mit der Codierung zu tun hat.
Ich habe das Meta-Tag so eingestellt, dass utf-8 angezeigt wird, aber offensichtlich fehlt mir etwas.
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Bearbeiten / Lösung: Aus Kommentaren mit FireBug ging hervor, dass die von meiner Seite übergebenen Header tatsächlich "Inhaltstyp: Text / HTML" und nicht UTF-8 waren. Ein Blick auf das Dateiformat mit Notepad ++ zeigte, dass meine Datei als "UTF-8 ohne Stückliste" formatiert war. Wenn Sie dies auf UTF-8 ändern, werden die Symbole jetzt korrekt angezeigt ... aber Firebug scheint immer noch denselben Inhaltstyp anzuzeigen.
content
Eigenschaft eines CSS-::before
Selektors die Backslash-Notation verwendet werden muss. Beispiel: '\ 2713' anstelle von '& # 2713'.Ich weiß, dass eine Antwort bereits akzeptiert wurde, wollte aber auf einige Dinge hinweisen.
Das Einstellen von
content-type
undcharset
ist offensichtlich eine gute Vorgehensweise. Das Ausführen auf dem Server ist viel besser, da dadurch die Konsistenz in Ihrer Anwendung sichergestellt wird.Ich würde es jedoch
UTF-8
nur verwenden, wenn die Sprache meiner Anwendung viele Zeichen verwendet, die nur imUTF-8
Zeichensatz verfügbar sind . Wenn Sie in einem Fall ein Unicode-Zeichen oder -Symbol anzeigen möchten, können Sie dies tun, ohne diecharset
Seite zu ändern .HTML
Renderer waren immer in der Lage, Symbole anzuzeigen, die nicht Teil des Kodierungszeichensatzes der Seite sind, solange Sie das Symbol in der Seite erwähnennumeric character reference (NCR)
. Klingt komisch, ist aber wahr.Selbst wenn Ihr
html
Header über eine Codierungansi
oder einen deriso
Zeichensätze verfügt, können Sie ein Häkchen mithilfe der HTML-Zeichenreferenz in Dezimalzahl anzeigen - & # 10003; oder in hex - & # x2713;Es ist daher etwas schwierig zu verstehen, warum Sie auf Ihren Seiten mit diesem Problem konfrontiert sind. Können Sie überprüfen, ob der NCR-Wert korrekt ist? Dies ist eine gute Referenz. Http://www.fileformat.info/info/unicode/char/2713/index.htm
quelle
Stellen Sie sicher, dass Sie die Datei tatsächlich als UTF-8 speichern, oder verwenden Sie alternativ HTML-Entitäten (
&#nnn;
) für die Sonderzeichen.quelle
fileencoding
Einstellung.Anders als von Nicolas vorgeschlagen, wird das
meta
Tag von den Browsern nicht ignoriert. DerContent-Type
HTTP-Header hat jedoch immer Vorrang vor dem Vorhandensein einesmeta
Tags im Dokument.Stellen Sie daher sicher, dass Sie entweder die richtige Codierung über den HTTP-Header senden oder diesen HTTP-Header überhaupt nicht senden (nicht empfohlen). Das
meta
Tag ist hauptsächlich eine Fallback-Option für lokale Dokumente, die nicht über HTTP-Verkehr gesendet werden.Die Verwendung von HTML-Entitäten sollte auch als Problemumgehung betrachtet werden - das umgeht das eigentliche Problem. Durch die ordnungsgemäße Konfiguration des Webservers werden viele Belästigungen vermieden.
quelle
Ich denke, dies ist ein Dateiproblem. Sie haben Ihre Datei einfach in einer 1-Byte-Codierung wie Latin-1 gespeichert. Google deinen Editor und wie man Dateien auf utf-8 setzt.
Ich frage mich, warum es Editoren gibt, die nicht standardmäßig utf-8 verwenden.
quelle