Хитрость в разгоне флексбокса заключается в поддержании модели гибкого контейнера и гибких предметов.Когда вы применяете display: flex;
к элементу, он становится контейнером flex, а непосредственные дочерние элементы становятся элементами flex.
Свойство flex
используется для настройки элементов flex и сокращенно для <flex-grow> <flex-shrink> <flex-basis>
,Итак, это правило ...
flex: 1 0 10%;
... говорит, что элемент должен расти (flex-grow: 1;
), не сжиматься (flex-shrink: 0;
) и начинать с ширины 10% (* 1011)*).flex-basis
определяет ширину, когда гибкий контейнер входит в flex-direction: row
, что является значением по умолчанию.Если flex-direction: column
, то основа будет представлять начальную высоту, но это для другого макета.
Ресурс, который укрепил мое понимание, и я настоятельно рекомендую делать закладки, так как он постоянно обновляется, чтобы отражать последние спецификации flexbox:https://css -tricks.com / snippets / css / a-guide-to-flexbox /
* { box-sizing: border-box; }
body { margin: 0; }
.container {
display: flex;
height: 100vh;
border: 3px solid green;
}
.dashbar {
flex: 1 0 10%;
background: dodgerblue;
}
.other-content {
flex: 1 0 90%;
background: papayawhip;
}
<div class="container">
<div class="dashbar">Dash</div>
<div class="other-content">Other</div>
</div>