100% высоты для дочернего flex контейнера

Flex опирается на другие принципы нежели блочные контейнеры, и иной раз не понятно какими свойствами управляется дочерний контейнер во flex родителе.

Рассмотрим пример, когда у нас есть flex контейнер с двумя дочерними элементами.

Ширина и высота дочек чаще всего будет зависеть от их контента, но только если родительский контейнер не задаёт свойство align-items значениями normal или stretch. Иногда это не так и требуется выровнять высоту дочерних элементов (например, сделать её 100% от родителя). Но высота родителя зависит в свою очередь от высоты самого высокого дочернего контейнера.

Cледующий стиль иногда решает проблему, если вы пытаетесь растянуть первый дочерний элемент по высоте до размеров родительского:

Но более надежный способ — использовать свойства align-items или align-self:

или чтобы повлиять на оба контейнера сразу:

Мало букафф? Читайте есчо !

Текст style CSS

Март 31, 2016 г.

Если вы решили разобраться как устроены документы в Интернет, тогда сразу после знакомства с гипертекстовой разметкой (HTML), вам нужно освоить каскадные ...

Читать

Позиционирование фона с помощью background-position

Май 3, 2018 г.

В CSS, для позиционирования фонового изображения в контейнере, мы используем свойство background-position. Свойство можно задать отдельно для оси X и Y,  кроме того можно задать 2, 3 или 4 параметра. Классический случай - позиционирование с ...

Читать

Анимация свечения (мерцание)

Апрель 18, 2025 г.

Здесь мы разбираем CSS анимацию - мерцание. Это статья из цикла заметок по CSS анимации и эффектам. Эта анимация создаёт эффект мягкого свечения вокруг элемента, будто он излучает свет. Часто используется для привлечения внимания к кнопкам, ...

Читать

Zoom-эффект на CSS3

Октябрь 21, 2015 г.

Давайте рассмотрим, как сделать эффект небольшого увеличения картинки при наведении курсора на контейнер. Такой эффект может немного оживить страницу, ...

Читать
 

Комментарии к «100% высоты для дочернего flex контейнера»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: