Загружаем изображение…

Почему 1fr ведёт себя не так, как ожидается?



Многие думают, что 1fr — это занять всё доступное пространство. На практике трек с 1fr часто упирается в минимальный размер контента (min-content) и не сжимается как ожидается.
.grid {
grid-template-columns: 1fr auto;
}


Если в первой колонке длинный текст или input, она может не сжаться и вытолкнуть вторую колонку.

Решение — явно разрешить колонке сжиматься:
.grid {
grid-template-columns: minmax(0, 1fr) auto;
}


minmax(0, 1fr) говорит браузеру: колонка может уменьшаться до 0, а не держаться за размер контента.

Теперь ellipsis, overflow и адаптив работают корректно.
.title {
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}


Это особенно важно для layout с заголовками, таблицами, карточками и input-полями.

Если используешь 1fr, в большинстве случаев безопаснее писать minmax(0, 1fr) — это избавляет от скрытых багов в grid.

Code Ready | #совет
Просмотры: 373
Открыть в MAX Сообщить о неточности

Репосты публикации

Публикация канала

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти