Un'impostazione iniziale di un contenitore Flex è flex-wrap: nowrap
. Ciò significa che gli elementi flessibili sono obbligati a rimanere in una singola riga.
È possibile sovrascrivere il valore predefinito con flex-wrap: wrap
.
Il valore display
degli elementi flessibili viene ignorato nel layout flessibile.
Un contenitore flessibile, che è un elemento con display: flex
o display: inline-flex
stabilisce un flex formatting context. Sebbene simile a uno block formatting context, ci sono differenze.
Una differenza è che i figli di un contenitore flessibile ignorano la proprietà display
.
Un'altra differenza è che, in un contenitore flessibile, i margini non collassano e le proprietà float
e clear
non hanno alcun effetto.
Un contenitore flessibile viene fornito con diverse impostazioni predefinite.Tra questi:
justify-content: flex-start
- elementi Flex impilare all'inizio della riga
flex-shrink: 1
- elementi di flessione sono autorizzati a ridursi e non traboccare il contenitore
align-items: stretch
- articoli flex si espanderà per coprire la cross-dimensioni del contenitore
flex-direction: row
- articoli flex allineerà orizzontalmente
flex-wrap: nowrap
- elementi flessibili sono costretti a rimanere in una singola linea
Nota gli ultimi due elementi.
Gli elementi flessibili si allineeranno in fila e non possono essere avvolti.
Se si desidera disporre di due elementi flessibili nella prima riga e di un terzo elemento nella seconda riga, consentire al contenitore di essere multiriga con flex-wrap: wrap
.
.container {
display: flex;
flex-wrap: wrap;
}
.box {
flex: 0 0 45%;
height: 50px;
margin: 5px;
background-color: lightgreen;
border: 1px solid #ccc;
}
<div class="container">
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
</div>
Inoltre, se si desidera contenitori flessibili per visualizzare in linea, utilizzare display: inline-flex
non display: flex
. Questi sono paragonabili a display: inline-block
e display: block
.
fonte
2016-06-24 22:46:19
Quando si inserisce il display flex, tutti i bambini saranno elementi flessibili. Indipendentemente dalla visualizzazione impostata, verrà ignorata. È necessario controllare il comportamento interno con le proprietà flexbox –
Provare a leggere [questo articolo] (https://css-tricks.com/snippets/css/a-guide-to-flexbox/). È un'ottima guida su come utilizzare le nuove proprietà di flex-box. –
Inoltre, [Flexbox Froggy] (http://flexboxfroggy.com/) e [Flexbox Defense] (http://www.flexboxdefense.com/) sono due piccoli giochi divertenti che insegnano come utilizzare le proprietà di allineamento correlate di FlexBox. –