<custom-ident>
Der <custom-ident> CSS Datentyp bezeichnet eine beliebige, benutzerdefinierte Zeichenfolge, die als Identifikator verwendet wird. Er ist groß-/kleinschreibungssensitiv, und bestimmte Werte sind in verschiedenen Kontexten verboten, um Mehrdeutigkeiten zu vermeiden.
Syntax
Die Syntax von <custom-ident> ähnelt CSS-Identifikatoren (wie Eigenschaftsnamen), mit der Ausnahme, dass er groß-/kleinschreibungssensitiv ist. Er besteht aus einem oder mehreren Zeichen, wobei Zeichen eines der folgenden sein können:
- ein beliebiges alphabetisches Zeichen (AbisZ, oderabisz),
- eine Dezimalziffer (0bis9),
- ein Bindestrich (-),
- ein Unterstrich (_),
- ein maskiertes Zeichen (eingeleitet durch einen Backslash, \),
- ein Unicode-Zeichen (im Format eines Backslashes, \, gefolgt von ein bis sechs hexadezimalen Ziffern, die seinen Unicode-Codepunkt darstellen)
Beachten Sie, dass id1, Id1, iD1 und ID1 unterschiedliche Identifikatoren sind, da sie groß-/kleinschreibungssensitiv sind.
Maskierung von Zeichen
Jeder Unicode-Codepunkt kann als Teil eines <custom-ident> oder zitierten <string> durch Maskierung eingeschlossen werden.
In CSS gibt es mehrere Möglichkeiten, ein Zeichen zu maskieren. Maskierungsfolgen beginnen mit einem Backslash (\) und werden fortgesetzt mit:
- Ein bis sechs hexadezimale (ABCDEF0123456789) Ziffern. Die hexadezimalen Ziffern können optional von einem Leerzeichen gefolgt sein. Die hexadezimale Maskierungssequenz wird durch den Unicode-Codepunkt ersetzt, dessen Wert durch diese Ziffern gegeben ist. Das Leerzeichen erlaubt es, dass die Sequenzen von tatsächlichen hexadezimalen Ziffern (im Gegensatz zu ersetzten) gefolgt werden.
- Jeder Unicode-Codepunkt, der keine hexadezimale Ziffer oder ein Zeilenumbruch ist.
Beispiele:
- "&B" kann als \26 Boder\000026Bgeschrieben werden.
- "hi.there" kann als hi\.thereoderhi\002Etheregeschrieben werden.
- "toto?" kann als toto\?,toto\3Fodertoto\00003Fgeschrieben werden.
Um tatsächlich ein Leerzeichen nach einer Maskierungssequenz einzuschließen, fügen Sie zwei Leerzeichen in die Maskierungssequenz ein.
Verbotene Werte
Ein <custom-ident> darf nicht in einfache oder doppelte Anführungszeichen gesetzt werden, da dies einem <string> identisch wäre. Außerdem darf das erste Zeichen keine Dezimalziffer sein, noch ein Bindestrich (-), gefolgt von einer Dezimalziffer.
Um Mehrdeutigkeit zu verhindern, verbietet jede Eigenschaft, die <custom-ident> verwendet, die Nutzung bestimmter Werte:
- animation-name
- 
Verbietet die globalen CSS-Werte ( unset,initialundinherit) sowienone.
- counter-reset,- counter-increment
- 
Verbietet die globalen CSS-Werte ( unset,initialundinherit) sowienone.
- @counter-style,- list-style-type
- 
Verbietet die globalen CSS-Werte ( unset,initialundinherit) sowie die Werte:- none
- inline
- outside
 Auch werden einige vordefinierte Werte von verschiedenen Browsern implementiert: - disc
- circle
- square
- decimal
- cjk-decimal
- decimal-leading-zero
- lower-roman
- upper-roman
- lower-greek
- lower-alpha
- lower-latin
- upper-alpha
- upper-latin
- arabic-indic
- armenian
- bengali
- cambodian
- cjk-earthly-branch
- cjk-heavenly-stem
- cjk-ideographic
- devanagari
- ethiopic-numeric
- georgian
- gujarati
- gurmukhi
- hebrew
- hiragana
- hiragana-iroha
- japanese-formal
- japanese-informal
- kannada
- katakana
- katakana-iroha
- khmer
- korean-hangul-formal
- korean-hanja-formal
- korean-hanja-informal
- lao
- lower-armenian
- malayalam
- mongolian
- myanmar
- oriya
- persian
- simp-chinese-formal
- simp-chinese-informal
- tamil
- telugu
- thai
- tibetan
- trad-chinese-formal
- trad-chinese-informal
- upper-armenian
- disclosure-open
- disclosure-close
 
- grid-row-start,- grid-row-end,- grid-column-start,- grid-column-end,- grid-template-rows,- grid-template-columns
- 
Verbietet die Werte spanundauto.
- view-transition-name
- 
Verbietet die globalen CSS-Werte ( unset,initialundinherit) sowienone.
- will-change
- 
Verbietet die globalen CSS-Werte ( unset,initialundinherit) sowie die Wertewill-change,auto,scroll-positionundcontents.
Beispiele
>Gültige Identifikatoren
nono79 A mix of alphanumeric characters and numbers ground-level A mix of alphanumeric characters and a dash -test A dash followed by alphanumeric characters _internal An underscore followed by alphanumeric characters \22 toto A Unicode character followed by a sequence of alphanumeric characters scooby\.doo A correctly escaped period
Ungültige Identifikatoren
34rem It must not start with a decimal digit. -12rad It must not start with a dash followed by a decimal digit. scooby.doo Only alphanumeric characters, _, and - needn't be escaped. 'scoobyDoo' This would be a <string>. "scoobyDoo" This would be a <string>.
Spezifikationen
Browser-Kompatibilität
Da dieser Typ kein realer Typ ist, sondern ein Bequemlichkeitstyp zur Vereinfachung der Beschreibung der erlaubten Werte, gibt es keine Browser-Kompatibilitätsinformationen als solche.