CSS-свойствоЭкспериментально

CSS margin-trim — синтаксис и примеры

CSS-свойство margin-trim: назначение, рабочее значение, влияние на раскладку или отрисовку, ошибки и поддержка браузерами.

Проверьте поддержку

«margin-trim» отмечено как экспериментальное в MDN Browser Compatibility Data. Предусмотрите базовый вариант и протестируйте целевые браузеры.

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

«margin-trim» рассматривается не как изолированный синтаксис, а как часть области «размеры и блочная модель». Свойство margin-trim относится к области «размеры и блочная модель» и участвует в расчёте блочной модели с учётом режима письма, ограничений min/max и box-sizing. Практический контекст для «margin-trim» — на странице при увеличении текста до 200%; во время проверки не добавляйте новую обёртку до объяснения её роли.

Практическое правило для margin-trim

Перед применением «margin-trim» сформулируйте ожидаемое поведение, затем проверьте вычисленное значение margin-trim, наследование и контекст родителя. Для «margin-trim» такое сравнение показывает реальную причину изменения.

Синтаксис margin-trim

Синтаксис «margin-trim» показан на минимальном фрагменте без внешнего фреймворка. Сначала запустите исходный вариант, затем меняйте отмеченную часть.

css
.demo {
  margin-trim: 1rem;
}
Открыть в Playground

Как работает margin-trim

Чтобы объяснить работу «margin-trim», проследите путь от структуры и входного значения до отображения или поведения. Свойство margin-trim относится к области «размеры и блочная модель» и участвует в расчёте блочной модели с учётом режима письма, ограничений min/max и box-sizing. Контрольная точка для «margin-trim» — размер содержащего блока в Layout.

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

  • Проверьте вычисленное значение margin-trim, наследование и контекст родителя; результат относится непосредственно к «margin-trim».
  • Проверить длинный текст, пустое значение и отсутствие необязательного ресурса при разборе «margin-trim».
  • Проверьте «margin-trim» на странице при увеличении текста до 200% через состояние при пустом содержимом и запишите наблюдаемое изменение.
Выбор конструкции

Оставляйте «margin-trim» в решении только после проверки на странице при увеличении текста до 200%. Если нативная конструкция решает задачу «margin-trim» с меньшим числом условий, используйте её.

Практика с margin-trim

Перенесите «margin-trim» на небольшом макете и испытайте его на странице при увеличении текста до 200%. Сначала воспроизведите правильный результат, затем намеренно добавьте риск для «margin-trim»: изолированная декларация margin-trim без связанных ограничений может дать другой результат в реальном компоненте.

размеры и блочная модельmargin-trim

Сценарий: на странице при увеличении текста до 200%.

Ошибки при работе с margin-trim

01

Контекст

Изолированная декларация margin-trim без связанных ограничений может дать другой результат в реальном компоненте — это предметный риск для «margin-trim».

02

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

Копирование свойства без необходимого родительского контекста при использовании «margin-trim».

03

Доступность

Использование физической стороны там, где нужен логический отступ; для «margin-trim» проверьте это отдельно.

Поддержка margin-trim

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

Chromeс версии нет данныхEdgeс версии нет данныхFirefoxс версии нет данныхSafariс версии 16.4

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

Вопросы о margin-trim

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

«margin-trim» выбрано правильно, когда оно решает задачу «задавать внешние или внутренние размеры и управлять местом для содержимого», сохраняет результат на странице при увеличении текста до 200% и проходит предметную проверку: проверьте вычисленное значение margin-trim, наследование и контекст родителя.

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

Для «margin-trim» запасной вариант обязателен: возможность отмечена как экспериментальная. Сначала реализуйте базовое поведение «margin-trim», затем подключайте улучшение после проверки поддержки.

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

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