Ho un contenitore flessibile con flex-wrap: wrap
e align-items: stretch
in modo che i bambini vengano allungati quando il contenitore viene ridimensionato fino a quando il bambino successivo non si adatta.Come non forzare l'ultima linea in un contenitore flessibile con elementi di allineamento: allungare
Il problema è in genere l'ultima riga ha meno elementi rispetto alle righe precedenti e i bambini vengono stirati troppo (tutte le caselle dovrebbero apparire uguali in ogni situazione). Come posso impedirlo se non creare un sacco di scatole vuote alla fine del container?
Il codice completo è qui: http://jsfiddle.net/m_gol/B3wLG/2/
E 'fondamentalmente:
body {
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-align-items: stretch;
align-items: stretch;
}
.child {
height: 50px;
margin: 10px;
-webkit-flex: 1 1 50px;
flex: 1 1 50px;
background-color: red;
border: 1px solid black;
}
dove body
contiene una serie di elementi con una classe child
.
Oltre a * non * rendere flessibili gli elementi di .child, non c'è nulla che tu possa veramente fare. – cimmanon
correlati: http://stackoverflow.com/q/34928565/3597276 –
Inoltre, 'align-items: stretch' non ha nulla a che fare con questo problema. L'ultimo dimensionamento della riga è un * * asse principale * relativo a 'flex-grow: 1' sugli elementi flex. [La proprietà 'align-items' funziona sull'asse * incrociato *] (http://stackoverflow.com/q/32551291/3597276). –