Spec-Zone.ru › CSS

<custom-ident>

Тип данных <custom-ident> CSS данных обозначает произвольную строку, определённую пользователем, используемую в качестве идентификатора. Она чувствительна к регистру, и некоторые значения запрещены в различных контекстах для предотвращения неоднозначности.

Синтаксис

Синтаксис <custom-ident> похож на идентификаторы CSS (такие как имена свойств), за исключением того, что он чувствителен к регистру. Он состоит из одного или нескольких символов, где символы могут быть следующими:

  • любой буквенный символ (A до Z, или a до z),
  • любая десятичная цифра (0 до 9),
  • дефис (-),
  • нижняя черта (_),
  • экранированный символ экранированный символ (предваряемый обратной косой чертой, \),
  • символ Unicode (в формате обратной косой черты, \, за которой следуют одна-шесть шестнадцатеричных цифр, представляющих его код Unicode)

Обратите внимание, что id1, Id1, iD1, и ID1 являются различными идентификаторами, поскольку они чувствительны к регистру.

Экранирование символов

Любой код Unicode может быть включён в качестве части <custom-ident> или в кавычках <string> путём экранирования.

В CSS существуют несколько способов экранирования символа. Последовательности экранирования начинаются с обратной косой черты (\), и продолжаются:

  • Одна-шесть шестнадцатеричных (ABCDEF0123456789 цифр. Шестнадцатеричные цифры могут быть дополнительно заменены пробелами. Шестнадцатеричная последовательность экранирования заменяется кодом Unicode, значение которого задано этими цифрами. Пробелы позволяют последовательностям следовать за фактическими шестнадцатеричными цифрами (вместо замены).
  • Любой код Unicode, который не является шестнадцатеричной цифрой или символом новой строки.

Примеры:

  • "&B" может быть записан как \26 B или \000026B.
  • "hi.there" может быть записан как hi\.there или hi\002Ethere.
  • "toto?" может быть записан как toto\?, toto\3F, или toto\00003F.

Для включения фактического пробела после последовательности экранирования, включите два пробела в последовательности экранирования.

Запрещённые значения

<custom-ident> не должен быть размещён между одинарными или двойными кавычками, так как это будет идентично <string>. Кроме того, первый символ не должен быть десятичной цифрой, ни дефисом (-) за которым следует десятичная цифра.

Для предотвращения неоднозначности, каждое свойство, использующее <custom-ident> запрещает использование определённых значений:

animation-name

Запрещает глобальные значения CSS (unset, initial, и inherit), а также none.

counter-reset, counter-increment

Запрещает глобальные значения CSS (unset, initial, и inherit), а также none.

@counter-style, list-style-type

Запрещает глобальные значения CSS (unset, initial, и inherit), а также значения:

  • none
  • inline
  • outside

Также, множество предопределённых значений реализованы различными браузерами:

  • 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

Запрещает значение span.

view-transition-name

Запрещает глобальные значения CSS (unset, initial, и inherit), а также none.

will-change

Запрещает глобальные значения CSS (unset, initial, и inherit), а также значения will-change, auto, scroll-position, и contents.

Примеры

Действительные идентификаторы

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

Недействительные идентификаторы

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

Спецификации

Спецификация
CSS Значения и единицы Модуль уровня 4
# custom-idents
CSS Изменить Модуль уровня 1
# valdef-will-change-custom-ident
CSS Стили счётчиков Уровень 3
# typedef-counter-style-name
CSS Списки и счётчики Модуль уровня 3
# counter-properties

Совместимость браузеров

См. также

  • <ident>
  • <dashed-ident>

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/custom-ident

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API