Ich versuche, drei Rechtecke auf einer Seite zu zeichnen. Das obere Rechteck muss viel kleiner sein als die anderen beiden. Sie können sehen, das obere Rechteck hat eine flex-grow: 1
(verglichen mit 5 für andere Rechtecke).Wie behält man die Höhe eines enthaltenden div-Elements?
Sobald ich jedoch drei Bilder in das obere Rechteck eingefügt habe, wird es größer, so dass es größer wird als andere Rechtecke.
Was kann ich tun, um zu verhindern, dass das obere Rechteck größer wird? Ich möchte nur, dass die Größe der Bilder an die ursprüngliche Behältergröße angepasst wird.
Ich werde mich für eine Lösung mit flexbox-Funktionen freuen (weil ich versuche, es zu lernen).
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
Die Verwendung von max-height kann eine gute Lösung sein, aber die Arbeit mit Prozenten kann irreführend sein. Hast du eine Idee, ohne Prozente zu verwenden? – CrazySynthax
Um die gewünschte Ausgabe zu erhalten, müssen Sie Höhe und maximale Höhe auf die gleiche Zahl einstellen. An diesem Punkt ist keine maximale Höhe erforderlich. Einfach Höhe einstellen: 50px; – DonO
Entschuldigung. Es war mein Fehler. Ich meinte nicht, dass mein Code in der Post "max-height" enthält. Ich suche nur nach einer Lösung, ohne Prozente zu verwenden. – CrazySynthax