Я пытаюсь нарисовать три прямоугольника на странице. Верхний прямоугольник должен быть намного меньше, чем два других. Вы можете видеть, что верхний прямоугольник имеет flex-grow: 1
(по сравнению с 5 для других прямоугольников).Как сохранить высоту содержащего элемента div?
Однако, когда я помещаю три изображения в верхний прямоугольник, он становится выше, поэтому он становится больше, чем другие прямоугольники.
Что я могу сделать, чтобы предотвратить появление верхнего прямоугольника? Я просто хочу, чтобы размер изображений был скорректирован, чтобы соответствовать размеру оригинального контейнера.
Я буду рад за решение, использующее функции flexbox (потому что я пытаюсь его изучить).
html,
body {
width: 100%;
height: 100%;
flex-flow: column wrap;
display: flex;
}
div {
flex-grow: 5;
display: flex;
border: solid;
margin: 1em;
}
#top {
flex-grow: 1
}
<div id="top">
<img src="http://i164.photobucket.com/albums/u8/hemi1hemi/COLOR/COL9-6.jpg">
<img src="http://i164.photobucket.com/albums/u8/hemi1hemi/COLOR/COL9-6.jpg">
<img src="http://i164.photobucket.com/albums/u8/hemi1hemi/COLOR/COL9-6.jpg">
</div>
<div id="middle"></div>
<div id="bottom"></div>
http://codepen.io/CrazySynthax/pen/ZBPXry
Использование max-height может быть хорошим решением, но работа с процентами может вводить в заблуждение. У вас есть идея без использования процентов? – CrazySynthax
Чтобы получить желаемый результат, вам нужно будет установить высоту максимальной высоты на тот же номер. В этот момент нет необходимости иметь максимальную высоту. Просто установите высоту: 50 пикселей; – DonO
Извините. Это была моя ошибка. Я не имел в виду, что мой код в сообщении включает «max-height». Я просто ищу решение без использования процентов. – CrazySynthax