CSS-справочникВ стандарте

CSS ::backdrop — как работает

CSS ::backdrop: принцип работы, корректный синтаксис, практический сценарий, ограничения, ошибки и актуальная совместимость.

Практический смысл

В материале о «::backdrop» основное внимание уделено области «псевдоэлементы». Псевдоэлемент ::backdrop выбирает специальную часть элемента без отдельного HTML-узла. Проверяйте поведение «::backdrop» в сетке с карточками разной высоты, причём сохраняйте реальную длину текста из проекта.

Практическое правило для ::backdrop

Рабочий критерий для «::backdrop»: проверяйте, создаётся ли псевдоэлемент в выбранном контексте и доступно ли содержимое без него. Если результат «::backdrop» меняется вместе с посторонним условием, пример ещё не изолирован.

Синтаксис ::backdrop

Пример «::backdrop» оставляет только контекст, необходимый для области «псевдоэлементы». Измените одно значение и проследите результат в браузере.

css
.label::backdrop {
  color: #2563eb;
}
Открыть в Playground

Как работает ::backdrop

Применяет декларации к псевдоэлементу без добавления лишнего HTML-узла. Для «::backdrop» проверьте две контрольные точки — победившую декларацию во вкладке Computed и поведение без пользовательской таблицы стилей: так видно, на каком этапе появляется итоговое поведение этой темы.

Проверка в проекте

  • Проверяйте, создаётся ли псевдоэлемент в выбранном контексте и доступно ли содержимое без него; результат относится непосредственно к «::backdrop».
  • Проверить ширину 320 px без горизонтальной прокрутки всей страницы при разборе «::backdrop».
  • Проверьте «::backdrop» в сетке с карточками разной высоты через победившую декларацию во вкладке Computed и запишите наблюдаемое изменение.
Выбор конструкции

Оставляйте «::backdrop» в решении только после проверки в сетке с карточками разной высоты. Если нативная конструкция решает задачу «::backdrop» с меньшим числом условий, используйте её.

Практика с ::backdrop

Перенесите «::backdrop» в минимальном компоненте и испытайте его в сетке с карточками разной высоты. Сначала воспроизведите правильный результат, затем намеренно добавьте риск для «::backdrop»: смысловое содержимое нельзя оставлять доступным только через ::backdrop.

псевдоэлементы::backdrop

Сценарий: в сетке с карточками разной высоты.

Ошибки при работе с ::backdrop

01

Устойчивость

Смысловое содержимое нельзя оставлять доступным только через ::backdrop — это предметный риск для «::backdrop».

02

Доступность

Загрузка тяжёлого ресурса до того, как он нужен пользователю при использовании «::backdrop».

03

Каскад

Использование !important вместо разбора каскада; для «::backdrop» проверьте это отдельно.

Поддержка ::backdrop

Для «::backdrop» таблица собрана из закреплённой версии MDN Browser Compatibility Data. Указанная версия браузера показывает первое заявленное появление базовой поддержки «::backdrop»; окончательное решение принимайте по аудитории конкретного проекта.

Chromeс версии 37Edgeс версии 79Firefoxс версии 47Safariс версии 15.4

Спецификация: источник 1.

Вопросы о ::backdrop

Как понять, что «::backdrop» выбрано правильно?

«::backdrop» выбрано правильно, когда оно решает задачу «выбрать создаваемую браузером часть элемента или особый фрагмент его содержимого», сохраняет результат в сетке с карточками разной высоты и проходит предметную проверку: проверяйте, создаётся ли псевдоэлемент в выбранном контексте и доступно ли содержимое без него.

Нужен ли запасной вариант для «::backdrop»?

Запасной вариант для «::backdrop» нужен, если целевой браузер или режим не обеспечивает выбранное поведение. Без улучшения «::backdrop» должно сохранять смысл, содержимое и основное действие.

Спецификации и источники

Синтаксис и статус проверяются по HTML Living Standard, спецификациям CSS и MDN Browser Compatibility Data. Примеры и объяснения подготовлены для этого сервиса.