<ident>
Der <ident> CSS Datentyp bezeichnet eine beliebige Zeichenfolge, die als Identifier verwendet wird.
Syntax
Ein CSS-Identifikator besteht aus einem oder mehreren Zeichen, die Folgendes sein können:
- ein beliebiges ASCII-Zeichen im Bereich
A-Zunda-z - eine Dezimalziffer (
0bis9) - ein Bindestrich (
-) - ein Unterstrich (
_) - jedes andere Unicode-Zeichen ab
U+00A0(also jedes andere nicht-ASCII-Unicode-Zeichen) - ein escape-Zeichen
Zusätzlich darf ein Identifikator nicht mit einer nicht-escaped Ziffer beginnen und nicht mit einem nicht-escaped Bindestrich gefolgt von einer nicht-escaped Ziffer.
Beachten Sie, dass id1, Id1, iD1 und ID1 alle unterschiedliche Identifikatoren sind, da sie case-sensitive sind. Andererseits sind toto\? und toto\3F dieselben Identifikatoren, da es mehrere Möglichkeiten gibt, ein Zeichen zu escapen.
Escaping characters
Das Escapen eines Zeichens bedeutet, es auf eine Weise darzustellen, die ändert, wie es von einem Softwaresystem interpretiert wird. In CSS können Sie ein Zeichen escapen, indem Sie einen Backslash (\) vor das Zeichen setzen. Jedes Zeichen, außer den hexadezimalen Ziffern 0-9, a-f und A-F, kann auf diese Weise escapt werden. Zum Beispiel kann & als \& escapt werden.
Sie können auch jedes Zeichen mit einem Backslash gefolgt vom Unicode-Codepunkt des Zeichens escapen, der aus ein bis sechs hexadezimalen Ziffern besteht. Zum Beispiel kann & als \26 escapt werden. In diesem Fall, wenn das escapte Zeichen von einer hexadezimalen Ziffer gefolgt wird, tun Sie eines der folgenden:
- Platzieren Sie ein Leerzeichen oder ein anderes Leerzeichenzeichen nach dem Unicode-Codepunkt.
- Geben Sie den vollständigen sechsstelligen Unicode-Codepunkt des zu escapenden Zeichens an.
Zum Beispiel kann der String &123 als \26 123 (mit einem Leerzeichen) oder \000026123 (mit dem sechsstelligen Unicode-Codepunkt für &) escapt werden, um sicherzustellen, dass 123 nicht als Teil des Escape-Musters betrachtet wird.
Beispiele
>Gültige Identifikatoren
nono79 /* A mix of alphanumeric characters and numbers */ ground-level /* A mix of alphanumeric characters and a dash */ -test /* A hyphen followed by alphanumeric characters */ --toto /* A custom-property like identifier */ _internal /* An underscore followed by alphanumeric characters */ \22 toto /* An escaped character followed by alphanumeric characters */ \000022toto /* Same as the previous example */ scooby\.doo /* A correctly escaped period */ 🔥123 /* A non-ASCII character followed by numbers */
Ungültige Identifikatoren
34rem /* Must not start with a decimal digit */ -12rad /* Must not start with a dash followed by a decimal digit */ scooby.doo /* ASCII characters apart from alphanumerics must be escaped */ 'scoobyDoo' /* Treated as a string */ "scoobyDoo" /* Treated as a string */
Spezifikationen
| Specification |
|---|
| CSS Values and Units Module Level 4> # typedef-ident> |
Browser-Kompatibilität
Da dieser Typ kein echter Typ, sondern ein Typ zur Vereinfachung der Definition anderer CSS-Syntax ist, gibt es keine Informationen zur Browser-Kompatibilität als solche.