The <custom-ident>
CSS data value denotes an arbitrary user-defined string used as an identifier. It is case-sensitive and in each context, several values are excluded to prevent misinterpretations.
Its syntax is similar to the CSS identifier one, except that it is case-sensitive: a <custom-ident>
is a sequence of characters where characters can be:
'A'
to 'Z'
, or 'a'
to 'z'
),'0'
to '9'
),'-'
)'_'
),'\'
),The first character must not be a decimal digit nor a dash ('-'
) followed by a decimal digit or another dash. A <custom-ident>
must not be placed between single or double quotes as it would be identical to a <string>
.
Note that id1
, Id1
, iD1
and ID1
are all different identifiers as they are case-sensitive. In the opposite, as there are several ways to escape a character, toto\?
and toto\3F
are the same identifiers.
In order to prevent ambiguity, each property using <custom-ident>
also defined a specific list of forbidden values:
animation-name
unset
, initial
, and inherit
, and the value none
.counter-reset
counter-increment
unset
, initial
, and inherit
, and the value none
.@counter-style
list-style-type
unset
, initial
, and inherit
, as well as the values none
, inline
, and outside
. Also quite a few predefined values are implemented by the different browsers: 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
, and disclosure-close
.grid-row-start
grid-row-end
grid-column-start
grid-column-end
span
value.will-change
unset
, initial
, inherit
, as well as the values will-change
, auto
, scroll-position
, and contents
.These are valid identifiers:
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 bili\.bob The period is correctly escaped
These are invalid identifiers:
34rem It must not start with a decimal digit. -12rad It must not start with a dash followed by a decimal digit. bili.bob Only alphanumeric characters, _ and - need not to be escaped. --toto It must not start with two dashes. 'bilibob' It isn't a <user-ident> but a <string>. "bilibob" It isn't a <user-ident> but a <string>.
As this type is not a real type but a convenience type used to simplify the description of allowed values, there is no browser compatibility information stricto sensu.
<angle>
, <blend-mode>
, <color>
, <custom-ident>
, <frequency>
, <gradient>
, <image>
, <length>
, <number>
, <percentage>
, <position>
, <ratio>
, <resolution>
, <shape>
, <string>
, <time>
, <timing-function>
, <uri>
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/custom-ident