CSS/@-Regeln/@charset

Aus SELFHTML-Wiki
< CSS‎ | @-Regeln
Wechseln zu: Navigation, Suche

Mit der @charset-Regel kann angegeben werden, in welcher Zeichencodierung ein Stylesheet verfasst wurde.

Diese Regel wird nur dann beachtet, wenn die Zeichencodierung nicht durch eine der folgenden Alternativen festgelegt wurde: Durch einen HTTP-Header, durch eine Byte-Order-Mark oder durch das Dokument, in dem sich das Stylesheet befindet (d. h. @charset ist in einem HTML style-Element wirkungslos).

Da die Codierung eines Dokuments bzw. eines Stylesheets eine sehr grundlegende Information ist, gelten strenge Regeln bei der Verarbeitung dieser @-Regel. Die Angabe der Zeichencodierung ist jedoch optional, wenn das Stylesheet in UTF-8 kodiert wurde, da es sich dabei um die Standardcodierung handelt.

Die Regel muss im Stylesheet an allererster Stelle stehen, d. h. kein einziges Zeichen darf vor dem @-Zeichen notiert werden. Im Gegensatz zu anderen Bestandteilen von CSS darf @charset nur in Kleinbuchstaben geschrieben werden.

Nach @charset folgt genau ein Leerzeichen gefolgt von einem doppelten Anführungszeichen. Direkt darauf folgt der Name der verwendeten Zeichencodierung. Bei diesem Namen spielt es keine Rolle, ob er in Groß- oder Kleinbuchstaben verfasst wurde. Direkt nach dem Codierungsnamen folgt wieder ein doppeltes Anführungszeichen sowie ein abschließender Strichpunkt.

Die @charset-Regel darf nur einmal in einem Dokument vorkommen.

Beispiel
@charset "utf-8"; /* Korrekt. */
@charset "ISO-8859-1"; /* Korrekt. */
@charset 'utf-8'; /* Falsch (nur doppelte Anführungszeichen sind erlaubt). */