<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), а также значения:noneinlineoutside
Также, множество предопределённых значений реализованы различными браузерами:
disccirclesquaredecimalcjk-decimaldecimal-leading-zerolower-romanupper-romanlower-greeklower-alphalower-latinupper-alphaupper-latinarabic-indicarmenianbengalicambodiancjk-earthly-branchcjk-heavenly-stemcjk-ideographicdevanagariethiopic-numericgeorgiangujaratigurmukhihebrewhiraganahiragana-irohajapanese-formaljapanese-informalkannadakatakanakatakana-irohakhmerkorean-hangul-formalkorean-hanja-formalkorean-hanja-informallaolower-armenianmalayalammongolianmyanmaroriyapersiansimp-chinese-formalsimp-chinese-informaltamilteluguthaitibetantrad-chinese-formaltrad-chinese-informalupper-armeniandisclosure-opendisclosure-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>.
Спецификации
Совместимость браузеров
См. также
© 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