CSS border-image-slice — синтаксис и примеры
CSS-свойство border-image-slice: назначение, рабочее значение, влияние на раскладку или отрисовку, ошибки и поддержка браузерами.
Суть темы
Назначение «border-image-slice» раскрывается через задачу «управлять местом элемента в потоке, его контекстом или взаимным расположением блоков». Свойство border-image-slice относится к области «раскладка и позиционирование» и может создавать новый контекст форматирования, содержащий блок или уровень наложения. Для воспроизводимой проверки «border-image-slice» используйте пример в диалоге с возвратом фокуса после закрытия и наблюдайте порядок фокуса в дереве доступности.
Проверяя «border-image-slice», соблюдайте правило: проверяйте border-image-slice вместе с родительским контекстом и соседними правилами. Для «border-image-slice» изменяйте одно условие за запуск и фиксируйте фактический результат.
Синтаксис border-image-slice
Синтаксис «border-image-slice» показан на минимальном фрагменте без внешнего фреймворка. Сначала запустите исходный вариант, затем меняйте отмеченную часть.
.demo {
border-image-slice: 1px solid currentColor;
}Как работает border-image-slice
Чтобы объяснить работу «border-image-slice», проследите путь от структуры и входного значения до отображения или поведения. Свойство border-image-slice относится к области «раскладка и позиционирование» и может создавать новый контекст форматирования, содержащий блок или уровень наложения. Контрольная точка для «border-image-slice» — состояние при пустом содержимом.
Проверка в проекте
- Проверьте вычисленное значение border-image-slice, наследование и контекст родителя; результат относится непосредственно к «border-image-slice».
- Проверить компонент внутри container query, не меняя размер окна при разборе «border-image-slice».
- Проверьте «border-image-slice» в диалоге с возвратом фокуса после закрытия через порядок фокуса в дереве доступности и запишите наблюдаемое изменение.
Выбор «border-image-slice» оправдан, если задача относится к области «раскладка и позиционирование», а риск «изолированная декларация border-image-slice без связанных ограничений может дать другой результат в реальном компоненте» исключён проверкой. Для «border-image-slice» сравнивайте не внешний вид, а результат для пользователя.
Практика с border-image-slice
Создайте два варианта «border-image-slice» в изолированном демо: корректный и с одной типичной ошибкой. Сравните варианты «border-image-slice» через порядок фокуса в дереве доступности и объясните различие.
Сценарий: в диалоге с возвратом фокуса после закрытия.
Ошибки при работе с border-image-slice
Устойчивость
Изолированная декларация border-image-slice без связанных ограничений может дать другой результат в реальном компоненте — это предметный риск для «border-image-slice».
Доступность
Использование !important вместо разбора каскада при использовании «border-image-slice».
Каскад
Копирование свойства без необходимого родительского контекста; для «border-image-slice» проверьте это отдельно.
Поддержка border-image-slice
Для «border-image-slice» таблица собрана из закреплённой версии MDN Browser Compatibility Data. Указанная версия браузера показывает первое заявленное появление базовой поддержки «border-image-slice»; окончательное решение принимайте по аудитории конкретного проекта.
Спецификация: источник 1.
Вопросы о border-image-slice
Как понять, что «border-image-slice» выбрано правильно?
«border-image-slice» выбрано правильно, когда оно решает задачу «управлять местом элемента в потоке, его контекстом или взаимным расположением блоков», сохраняет результат в диалоге с возвратом фокуса после закрытия и проходит предметную проверку: проверьте вычисленное значение border-image-slice, наследование и контекст родителя.
Нужен ли запасной вариант для «border-image-slice»?
Запасной вариант для «border-image-slice» нужен, если целевой браузер или режим не обеспечивает выбранное поведение. Без улучшения «border-image-slice» должно сохранять смысл, содержимое и основное действие.
Спецификации и источники
Синтаксис и статус проверяются по HTML Living Standard, спецификациям CSS и MDN Browser Compatibility Data. Примеры и объяснения подготовлены для этого сервиса.