`<ident>` тип CSS
<ident> CSS — это тип данных, обозначающий произвольную строку символов без кавычек, используемую в качестве идентификатора.
Синтаксис
Идентификатор CSS состоит из одного или нескольких символов, которыми могут быть:
- любой символ ASCII из диапазонов
A-Zиa-z - любая десятичная цифра (от
0до9) - дефис (
-) - подчёркивание (
_) - любой другой символ Unicode с кодом
U+00A0или выше (то есть любой другой символ Unicode, не входящий в ASCII) - экранированный символ
Кроме того, идентификатор не должен начинаться с неэкранированной цифры или с неэкранированного дефиса, за которым следует неэкранированная цифра.
Обратите внимание, что id1, Id1, iD1 и ID1 — это разные идентификаторы, поскольку они чувствительны к регистру. С другой стороны, поскольку символ можно экранировать несколькими способами, toto\? и toto\3F — это один и тот же идентификатор.
Экранирование символов
Экранирование символа означает его представление в виде, который изменяет способ его интерпретации программной системой. В CSS символ можно экранировать, добавив перед ним обратную косую черту (\). Таким способом можно экранировать любой символ, кроме шестнадцатеричных цифр 0-9, a-f и A-F. Например, & можно экранировать как \&.
Также любой символ можно экранировать с помощью обратной косой черты, за которой следует кодовая точка символа Unicode, записанная одной — шестью шестнадцатеричными цифрами. Например, & можно экранировать как \26. При таком способе, если за экранированным символом следует шестнадцатеричная цифра, выполните одно из следующих действий:
- Добавьте пробел или другой пробельный символ после кодовой точки Unicode.
- Укажите полную шестизначную кодовую точку Unicode экранируемого символа.
Например, строку &123 можно экранировать как \26 123 (с пробелом) или \000026123 (с шестизначной кодовой точкой Unicode для &), чтобы 123 не считалось частью шаблона экранирования.
Примеры
Допустимые идентификаторы
nono79 /* A mix of alphanumeric characters and numbers */ ground-level /* A mix of alphanumeric characters and a dash */ -test /* A hyphen followed by alphanumeric characters */ --toto /* A custom-property like identifier */ _internal /* An underscore followed by alphanumeric characters */ \22 toto /* An escaped character followed by alphanumeric characters */ \000022toto /* Same as the previous example */ scooby\.doo /* A correctly escaped period */ 🔥123 /* A non-ASCII character followed by numbers */
Недопустимые идентификаторы
34rem /* Must not start with a decimal digit */ -12rad /* Must not start with a dash followed by a decimal digit */ scooby.doo /* ASCII characters apart from alphanumerics must be escaped */ 'scoobyDoo' /* Treated as a string */ "scoobyDoo" /* Treated as a string */
Спецификации
Совместимость с браузерами
Поскольку этот тип не является настоящим типом, а служит вспомогательным типом для упрощения определения других синтаксических конструкций CSS, данных о совместимости с браузерами для него нет.
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/ident