CSS-свойствоВ стандарте

CSS column-width — синтаксис и примеры

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

Когда применять

В материале о «column-width» основное внимание уделено области «размеры и блочная модель». Свойство column-width относится к области «размеры и блочная модель» и участвует в расчёте блочной модели с учётом режима письма, ограничений min/max и box-sizing. Проверяйте поведение «column-width» на странице при отключённых изображениях, причём фиксируйте ожидаемое состояние до открытия DevTools.

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

Проверяя «column-width», соблюдайте правило: проверяйте column-width вместе с родительским контекстом и соседними правилами. Для «column-width» изменяйте одно условие за запуск и фиксируйте фактический результат.

Синтаксис column-width

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

css
.demo {
  column-width: min(100%, 60rem);
}
Открыть в Playground

Как работает column-width

Свойство column-width относится к области «размеры и блочная модель» и участвует в расчёте блочной модели с учётом режима письма, ограничений min/max и box-sizing. Для «column-width» проверьте две контрольные точки — результат при отключённом JavaScript и изменение DOM в панели Elements: так видно, на каком этапе появляется итоговое поведение этой темы.

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

  • Проверьте вычисленное значение column-width, наследование и контекст родителя; результат относится непосредственно к «column-width».
  • Пройти компонент клавишами Tab, Enter, Space и стрелками, если они предусмотрены при разборе «column-width».
  • Проверьте «column-width» на странице при отключённых изображениях через результат при отключённом JavaScript и запишите наблюдаемое изменение.
Выбор конструкции

Используйте «column-width», когда требуется задавать внешние или внутренние размеры и управлять местом для содержимого; подтвердите выбор предметной проверкой: проверьте вычисленное значение column-width, наследование и контекст родителя. Для «column-width» более простой вариант предпочтителен, если он сохраняет тот же смысл и поведение.

Практика с column-width

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

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

Сценарий: на странице при отключённых изображениях.

Ошибки при работе с column-width

01

Поддержка

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

02

Контекст

Зависимость результата от placeholder вместо постоянной подписи при использовании «column-width».

03

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

Фиксированные размеры, которые перестают вмещать реальное содержимое; для «column-width» проверьте это отдельно.

Поддержка column-width

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

Chromeс версии 50Edgeс версии 12Firefoxс версии 50Safariс версии 9

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

Вопросы о column-width

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

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

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

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

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

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