Вебсправочник
Справочник CSS

isolation: локальный контекст наложения компонента

Значение isolation:isolate создаёт новый контекст наложения. Оно помогает ограничить взаимодействие слоёв внутри компонента с соседними частями страницы.

Назначение

Значение isolation:isolate создаёт новый контекст наложения. Оно помогает ограничить взаимодействие слоёв внутри компонента с соседними частями страницы.

Как это работает

Дочерние z-index сравниваются внутри созданного контекста. Даже очень большое значение у потомка не позволяет ему произвольно обойти порядок внешних контекстов. Свойство не заменяет position и не задаёт координаты.

Пример

<style>.tile{isolation:isolate;position:relative;padding:2rem;border:1px solid #44715b}.tile::before{content:"";position:absolute;inset:.5rem;background:#ddf3e7;z-index:-1}</style>
<section class="tile"><h2>Учебная карточка</h2><p>Декоративный слой находится за текстом.</p></section>

Что должно получиться

Псевдоэлемент с отрицательным z-index остаётся внутри локального контекста карточки. Фоновая подложка лежит за содержимым, но не уходит под произвольные внешние слои.

Граница применения и частая ошибка

Isolation не обрезает содержимое и не является защитной песочницей. Выпадающее меню внутри изолированного компонента может остаться ниже соседнего контекста, как бы ни увеличивался его z-index.

Самостоятельная проверка

Добавьте рядом перекрывающую карточку с собственным position и z-index. Сравните изменение z-index у родителя и у потомка. Объясните, почему порядок на одном уровне нельзя исправить числом внутри другого уровня.

HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Проверки печати, загрузки файлов и сетевых ответов выполняйте в отдельном учебном проекте.

Попробуйте сами

HTML + CSS песочница
РЕЗУЛЬТАТ · ИЗОЛИРОВАННЫЙ ПРЕДПРОСМОТР
Измените код и нажмите «Запустить». JavaScript и внешние запросы отключены.
Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.