<custom-ident> - CSS: Cascading Style Sheets 编辑

The <custom-ident> CSS data type denotes an arbitrary user-defined string used as an identifier. It is case-sensitive, and certain values are forbidden in various contexts to prevent ambiguity.

Syntax

The syntax of <custom-ident> is similar to CSS identifiers (such as property names), except that it is case-sensitive. It consists of one or more characters, where characters can be any of the following:

  • any alphabetical character (A to Z, or a to z),
  • any decimal digit (0 to 9),
  • a hyphen (-),
  • an underscore (_),
  • an escaped character (preceded by a backslash, \),
  • a Unicode character (in the format of a backslash, \, followed by one to six hexadecimal digits, representing its Unicode code point)

Note that id1, Id1, iD1 and ID1 are all different identifiers as they are case-sensitive. On the other hand, as there are several ways to escape a character, toto\? and toto\3F are the same identifiers.

Forbidden values

A <custom-ident> must not be placed between single or double quotes as this would be identical to a <string>. Moreover, the first character must not be a decimal digit, nor a hyphen (-) followed by a decimal digit or another hyphen.

To prevent ambiguity, each property that uses <custom-ident> forbids the use of specific values:

animation-name
Forbids the global CSS values (unset, initial, and inherit), as well as none.
counter-reset
counter-increment
Forbids the global CSS values (unset, initial, and inherit), as well as none.
@counter-style
list-style-type
Forbids the global CSS values (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
Forbids the span value.
will-change
Forbids the global CSS values (unset, initial, and inherit), as well as the values will-change, auto, scroll-position, and contents.

Examples

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         A correctly escaped period

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 - needn't be escaped.
--toto            It must not start with two dashes. This would be a custom property.
'bilibob'         This would be a <string>.
"bilibob"         This would be a <string>.

Specifications

SpecificationStatusComment
CSS Values and Units Module Level 4
The definition of '<custom-ident>' in that specification.
Editor's Draft
CSS Will Change Module Level 1
The definition of '<custom-ident> for will-change' in that specification.
Candidate RecommendationDefines which values are excluded for will-change.
CSS Counter Styles Level 3
The definition of '<custom-ident> for list-style-type' in that specification.
Candidate RecommendationUses <custom-ident> instead of a finite list of keywords. Defines which values are excluded for list-style-type and @counter-style.
CSS Lists Module Level 3
The definition of '<custom-ident> for counter-*' in that specification.
Working DraftRenames <identifier> to <custom-ident>. Adds its usage to the new counter-set property.
CSS Animations Level 1
The definition of '<custom-ident> for animation-name' in that specification.
Working DraftDefines which values are excluded for animation-name.
CSS Values and Units Module Level 3
The definition of '<custom-ident>' in that specification.
Candidate RecommendationRenames <identifier> to <custom-ident>. Makes it a pseudo-type and forbids the use of excluded values.
CSS Level 2 (Revision 1)
The definition of '<identifier>' in that specification.
RecommendationInitial definition.

Browser compatibility

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 as such.

See also

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:79 次

字数:10633

最后编辑:6 年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文