Server und Browser kommunizieren miteinander, indem sie Datenbytes über das Internet senden. Wenn der Server beim Senden einer HTML-Datei nicht angibt, welches Zeichencodierungsformat er verwendet, weiß der Browser nicht, für welches Zeichen die einzelnen Byte stehen. Die Spezifikation Zeichencodierungsdeklaration löst dieses Problem.
So schlägt die charset
-Prüfung von Lighthouse fehl
Lighthouse kennzeichnet Seiten, für die keine Zeichencodierung angegeben ist:
![Die fehlgeschlagene Zeichencodierungsprüfung.](https://developer.chrome.com/static/docs/lighthouse/best-practices/charset/image/the-failing-character-enc-65708532bd6a6.png?authuser=6&hl=de)
Lighthouse betrachtet die Zeichencodierung als deklariert, wenn eines der folgenden Elemente erkannt wird:
- Ein
<meta charset>
-Element im<head>
des Dokuments, das in den ersten 1.024 Byte des Dokuments vollständig enthalten ist - Ein
Content-Type
-HTTP-Antwortheader mit einercharset
-Anweisung, der mit einem gültigen IANA-Namen übereinstimmt - Eine Bytereihenfolgemarkierung (BOM)
So bestehen Sie die charset
-Prüfung
Dem HTML-Code ein <meta charset>
-Element hinzufügen
Fügen Sie innerhalb der ersten 1.024 Byte des HTML-Dokuments ein <meta charset>
-Element hinzu.
Das Element muss vollständig in den ersten 1.024 Byte enthalten sein.
Es empfiehlt sich, das Element <meta charset>
zum ersten Element im <head>
Ihres Dokuments zu machen.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
…
Content-Type
-HTTP-Antwortheader hinzufügen
Konfigurieren Sie Ihren Server so, dass er einen Content-Type
-HTTP-Antwortheader mit einer charset
-Anweisung hinzufügt.
Content-Type: text/html; charset=UTF-8