Экранирование CSS (Escape / Unescape)

Экранируйте текст для идентификаторов и селекторов CSS в точности как CSS.escape() либо для строк в кавычках; снимайте экранирование \HEX. Цифры, эмодзи, # и . учтены.

Символов: 19 · байт: 19 (UTF-8)

Символов: 0 · байт: 0 (UTF-8)

Работает полностью в вашем браузере. Ваши данные никуда не загружаются.

Что такое Экранирование CSS?

Экранирует текст, чтобы его можно было использовать как идентификатор CSS — id или класс в селекторе, например в querySelector, — по алгоритму CSSOM CSS.escape(), либо как содержимое строки CSS в кавычках. Также преобразует экранирование CSS обратно в текст.

Как пользоваться Экранирование CSS

  1. Выберите Экранировать или Снять экранирование.
  2. Для экранирования укажите Контекст: Идентификатор / селектор (CSS.escape) или Строковое значение в кавычках; при необходимости включите Экранировать не-ASCII как \HEX.
  3. Введите id, класс или строку в Ввод и скопируйте Вывод.

Пример

Ввод
0a#b.c
Вывод
\30 a\#b\.c

Когда использовать Экранирование CSS

Режим идентификатора нужен всякий раз, когда id или класс может начинаться с цифры или содержать символы вроде ., :, # или пробелов, например document.querySelector("#" + CSS.escape(id)). Режим строки подходит для значений content: и названий шрифтов. Инструмент не проверяет и не минифицирует CSS.

Как работает Экранирование CSS

Режим идентификатора следует CSSOM §2.1: NUL становится U+FFFD; управляющие символы, ведущая цифра или цифра после ведущего дефиса становятся экранированием кодовой точки \HEX ; одиночный - становится \-; буквы, цифры, -, _ и не-ASCII символы остаются; любой другой ASCII-символ получает обратную косую черту (# → \#). Режим строки экранирует \, " и ' обратной косой чертой, а управляющие символы (включая переводы строк) — как \HEX . Снятие экранирования читает \ и 1–6 hex-цифр с одним необязательным пробельным символом, удаляет экранированные переводы строк, а прочие экранированные символы оставляет буквально.

Распространенные Случаи Использования

  • Выбор элементов, у которых id начинается с цифры (#\31 23)
  • Построение селекторов из пользовательских имён классов
  • Запись специальных символов в строках content:
  • Чтение экранированных селекторов, созданных инструментами

Часто Задаваемые Вопросы

Почему ведущая цифра превращается в \3X ?

Идентификаторы CSS не могут начинаться с цифры, поэтому цифра записывается своей кодовой точкой (1 = \31) с пробелом, завершающим экранирование.

Это то же самое, что CSS.escape() в браузере?

Да, режим идентификатора реализует ту же спецификацию и даёт идентичный результат.

Нужно ли экранировать не-ASCII символы?

Нет, файлы CSS в UTF-8 могут содержать их напрямую. Опция нужна для таблиц стилей только из ASCII.

Что сделать дальше

Форматирование CSS
Приведите CSS в порядок через Prettier: одно объявление на строку, единые пробелы, отступ 2 или 4 пробела либо табуляция, аккуратные media-запросы.
Генератор CSS box-shadow
Создавайте CSS box-shadow визуально: несколько слоёв, смещение, размытие, растяжение, inset и прозрачность RGBA. Живой предпросмотр и готовый код.
Генератор CSS-градиентов
Создавайте линейные, радиальные и конические CSS-градиенты с точками цвета, углами, повторением и интерполяцией OKLCH. Предпросмотр и готовый код.
Генератор CSS Flexbox
Настраивайте направление, перенос, выравнивание и отступы flex-контейнера, а также рост, порядок и выравнивание каждого элемента визуально. Готовый CSS-код.
Генератор CSS Grid
Стройте CSS Grid визуально: grid-template-columns/rows, именованные области с проверкой, отступы, выравнивание и размещение элементов. Чистый CSS.
Минификатор кода
Минифицируйте JavaScript (Terser), CSS (CSSO), HTML, JSON или XML в одном инструменте: выберите язык, вставьте код и узнайте экономию в байтах. В браузере.

Другие категории