Ich versuche, ein Bild vertikal in einem Flex-Container, der eine bestimmte Höhe hat passen.Wie ein Bild vertikal in einem Flex-Container mit Richtung passen: Spalte
Die flex-direction
ist column
, und das Bild ist in einer flex-item
mit flex-basis: 100%
enthalten.
Zusätzlich ist das Bild max-height
100%
.
Wie Sie im Beispiel sehen können, passt das Bild nicht in den roten Container.
#container {
background-color: red;
display: flex;
flex-direction: column;
flex-wrap: wrap;
height: 200px;
width: 320px;
justify-content: space-between;
}
#container > * {
padding: 5px;
}
#img {
flex: 0 1 100%;
/* height: 100%; */
}
img {
max-height: 100%;
max-width: 100%;
}
<div id="container">
<div id="img">
<img src="https://placeholdit.imgix.net/~text?txtsize=33&txt=img&w=340&h=500">
</div>
<div>
Something else
</div>
</div>
soll nicht das Bild schrumpft vertikal in den Flex Behälter passen, gemäß der Spezifikation?
Die Problemumgehung, die ich gefunden habe, ist die height
von #img
zu 100%
, aber ich habe das Gefühl, dass es nicht so ist, wie es gemacht werden sollte.
Als eine zusätzliche Anmerkung, wenn ich flex-direction: row
auf den Container festlegen, passt es das Bild horizontal (das ist das Verhalten, das ich erwarten würde).
geben das Bild max-width: 100% und height: auto denke ich, dass es machen kann – DanyCode
@DanyCode Versuchte es ohne Effekt –
In Verbindung stehend? - http://stackoverflow.com/questions/30788131/css3-flexbox-maintain-image-aspect-ratio –