"Soluzione"
Io uso la soluzione termine con leggerezza come questa è follemente difficile fare a meno righe fisse come Tomas suggerito (cioè senza alterare il codice HTML a un stile più convenzionale), o in genere senza un alto grado di hacking. Inoltre, l'altezza si dimezza a meno che non ci siano 2 file completate e il div contenente non possa essere ridimensionato in modo affidabile; commenta il bambino 7 e vedi cosa succede. Poi, quando disattivi anche tu, vedi che ritorna a 'normale'.
I have been messing around for an hour or so and the best I can come up with is in this fiddle.
mi piacerebbe offrire un po 'di storia
Il valore di default è flex-flow
row nowrap
, questo imposta una certa larghezza x
sull'elemento la fortuna di ricevere questa regola. Sembra che in questo caso la modifica di flex-flow
a column
non ripristini la larghezza x
definita su quell'elemento. L'elemento prende la larghezza x
come se fosse flex-flow: row nowrap
(provalo tu stesso).
C'è un mucchio di questioni ereditarie larghezza che derivano da questo, non possiamo impostare la proprietà flex-basis
(non è destinata a comportarsi in questo modo credo) quindi abbiamo bisogno di avvolgere tutto in un altro elemento .container
che possiamo definire la larghezza su e inserire invece gli stili di colonna effettivi su un elemento .row
. Tuttavia, .container
non si ridurrà. Nella migliore delle ipotesi, la nostra colonna è definita in modo appropriato in larghezza con l'elemento .container
(ing) in cui entrambi eseguono le proprie azioni.
Quindi abbiamo bisogno di uno pseudo elemento ::after
per fornire lo sfondo con larghezza corretta, inclusi alcuni margin
e calc()
hack per simulare il riempimento.
Potrei digitare molto di più, ma non penso che questa sia una soluzione praticabile, in realtà solo una "prova" di come non può essere fatto bene.
Se si desidera aggiungere più righe, è necessario modificare la larghezza dal 50% per 2 (1/2), al 33% per 3 (1/3) ecc. Non è così scalabile come modificare l'HTML stesso.
Quindi, per concludere, c'è una demo funzionante solo per 2 righe, ma per ora non sembra plausibile con la struttura attuale del markup HTML.
Grazie, stavo anche tirando su i capelli. Almeno questo dimostra che è praticamente impossibile, quindi credo che sia la risposta in questo momento. –