Was passiert, wenn wir nicht angeben ?

Lesezeit: 2 Minuten

Benutzer-Avatar
Pankaj Parashar

Was passiert, wenn wir nicht angeben <meta charset="utf-8"> im HEAD des HTML-Dokuments?

Ob ein solches meta -Tag vorhanden ist oder nicht, suchen Browser und Benutzeragenten zunächst in den HTTP-Headern nach Codierungsinformationen. Tatsächlich werden sie sogar vorher Benutzereinstellungen respektieren und BOM-Sniffing durchführen, wie in Abschnitt 8.2.2.1 beschrieben Bestimmung der Zeichenkodierung in HTML5 CR – das ist in dieser Ausgabe eher eine Beschreibung der Realität als nur eine vorgeschlagene Norm.

Die Antwort lautet also wirklich „es kommt darauf an“. In vielen Fällen ist die meta -Tag wird ignoriert, daher hat das Weglassen keine Auswirkung, außer vielleicht in Situationen, in denen das HTML-Dokument lokal gespeichert wird (so dass HTTP-Header verloren gehen). In vielen anderen Fällen wird es nicht ignoriert, aber wenn es weggelassen wird, werden Browser trotzdem auf die richtige Codierung schließen. Und in einigen Fällen, in denen das Tag das Einzige ist, was den Browser dazu bringt, die richtige Codierung zu verwenden, führt das Weglassen zu einer falschen Interpretation der Daten, typischerweise so, dass Bytes in der Windows-1252-Codierung interpretiert werden. Worauf es dabei ankommt, hängt vom tatsächlichen Inhalt ab.

  • Können Sie ein Beispiel geben, wo Weglassen einen Unterschied machen würde?

    – larry909

    6. Februar 2020 um 9:20 Uhr

Benutzer-Avatar
Darin Dimitrow

Was passiert, wenn wir nicht angeben <meta charset="utf-8"> ? im HEAD des HTML-Dokuments?

Der Benutzeragent sucht nach dem vom Server gesendeten Content-Type-Antwort-HTTP-Header:

Content-Type: text/html; charset=utf-8

Und wenn der Content-Type-Header kein a charset je nach User Agent können unterschiedliche Dinge passieren. Einige Benutzeragenten könnten versuchen, Heuristiken zu verwenden erraten den korrekten Zeichensatz, indem Sie einige der Bytes aus dem Antwortstrom analysieren und nach bekannten Kodierungen suchen. Und wenn dies fehlschlägt, könnten am Ende ein paar Fragezeichen oder seltsame Symbole auf Ihrer Webseite an der Stelle erscheinen, an der Sie Zeichen außerhalb des ASCII-Bereichs verwendet haben.

  • Diese Antwort ist etwas irreführend, da immer zuerst der HTTP-Header untersucht wird.

    – Benutzer123444555621

    12. Mai 2013 um 11:39 Uhr

für Charaktere wie:
↑→↓←

sie würden wie folgt angezeigt:
↑→↓â†

es sei denn, Sie verwenden das UTF-8-Format:
<meta charset="UTF-8">

  • Kam hierher, um das zu sagen. Dies gilt auch für MS Word-formatierten Text, der in HTML eingefügt wird. <meta charset="utf-8"> ist der Unterschied zwischen Sehen “…” gegen sehen “…â€

    – RedDragonWebDesign

    27. Juli 2020 um 13:52 Uhr

1180530cookie-checkWas passiert, wenn wir nicht angeben ?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy