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

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

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

Суть темы

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

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

Рабочий критерий для «font-width»: проверьте вычисленное значение font-width, наследование и контекст родителя. Если результат «font-width» меняется вместе с посторонним условием, пример ещё не изолирован.

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

Минимальная запись «font-width» нужна для отделения самой возможности от стилей и разметки проекта. Проверьте фрагмент отдельно перед переносом.

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

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

Механика «font-width» начинается с допустимого контекста и заканчивается наблюдаемым результатом. Свойство font-width относится к области «размеры и блочная модель» и участвует в расчёте блочной модели с учётом режима письма, ограничений min/max и box-sizing; для «font-width» отдельно проверьте перестроение при смене writing-mode.

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

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

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

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

Создайте два варианта «font-width» в тестовом шаблоне: корректный и с одной типичной ошибкой. Сравните варианты «font-width» через перестроение при смене writing-mode и объясните различие.

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

Сценарий: в компоненте с русским и английским содержимым.

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

01

Контекст

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

02

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

Непредсказуемое наследование значения из внешнего компонента при использовании «font-width».

03

Доступность

Дублирование интерактивной роли без нативного управления; для «font-width» проверьте это отдельно.

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

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

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

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

Вопросы о font-width

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

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

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

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

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

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