CSS isolation — синтаксис и примеры
CSS-свойство isolation: назначение, рабочее значение, влияние на раскладку или отрисовку, ошибки и поддержка браузерами.
Практический смысл
Для «isolation» важно отделить назначение от случайного оформления. Свойство isolation относится к области «визуальное поведение элемента» и участвует в каскаде, получает вычисленное значение и применяется в подходящем контексте. При проверке в компоненте внутри узкого контейнера, а не viewport сначала зафиксируйте изменение DOM в панели Elements для «isolation», затем используйте нативное действие вместо имитации клика.
Проверяя «isolation», соблюдайте правило: проверяйте isolation вместе с родительским контекстом и соседними правилами. Для «isolation» изменяйте одно условие за запуск и фиксируйте фактический результат.
Синтаксис isolation
Для демонстрации «isolation» используется короткий код с наблюдаемым результатом. Сохраните структуру примера, когда будете проверять другое значение.
.demo {
isolation: inherit;
}Как работает isolation
Механика «isolation» начинается с допустимого контекста и заканчивается наблюдаемым результатом. Свойство isolation относится к области «визуальное поведение элемента» и участвует в каскаде, получает вычисленное значение и применяется в подходящем контексте; для «isolation» отдельно проверьте изменение DOM в панели Elements.
Проверка в проекте
- Проверьте вычисленное значение isolation, наследование и контекст родителя; результат относится непосредственно к «isolation».
- Проверить печать и убедиться, что важное содержимое не исчезает при разборе «isolation».
- Проверьте «isolation» в компоненте внутри узкого контейнера, а не viewport через изменение DOM в панели Elements и запишите наблюдаемое изменение.
Оставляйте «isolation» в решении только после проверки в компоненте внутри узкого контейнера, а не viewport. Если нативная конструкция решает задачу «isolation» с меньшим числом условий, используйте её.
Практика с isolation
Проверьте «isolation» в тестовом шаблоне с длинным текстом, клавиатурным управлением и узким экраном. Отдельная проверка для «isolation»: проверьте вычисленное значение isolation, наследование и контекст родителя.
Сценарий: в компоненте внутри узкого контейнера, а не viewport.
Ошибки при работе с isolation
Доступность
Изолированная декларация isolation без связанных ограничений может дать другой результат в реальном компоненте — это предметный риск для «isolation».
Каскад
Потеря содержимого при печати или отключении фоновых изображений при использовании «isolation».
Поддержка
Использование физической стороны там, где нужен логический отступ; для «isolation» проверьте это отдельно.
Поддержка isolation
Для «isolation» таблица собрана из закреплённой версии MDN Browser Compatibility Data. Указанная версия браузера показывает первое заявленное появление базовой поддержки «isolation»; окончательное решение принимайте по аудитории конкретного проекта.
Спецификация: источник 1.
Вопросы о isolation
Как понять, что «isolation» выбрано правильно?
«isolation» выбрано правильно, когда оно решает задачу «уточнять один из этапов расчёта или отрисовки CSS-бокса», сохраняет результат в компоненте внутри узкого контейнера, а не viewport и проходит предметную проверку: проверьте вычисленное значение isolation, наследование и контекст родителя.
Нужен ли запасной вариант для «isolation»?
Запасной вариант для «isolation» нужен, если целевой браузер или режим не обеспечивает выбранное поведение. Без улучшения «isolation» должно сохранять смысл, содержимое и основное действие.
Спецификации и источники
Синтаксис и статус проверяются по HTML Living Standard, спецификациям CSS и MDN Browser Compatibility Data. Примеры и объяснения подготовлены для этого сервиса.