В bootstrap -4 нет классов *-xs-*
. Вместо этого используйте col-12
. `col-xs- *` не работает в Bootstrap 4
Есть три способа добавить пространство между столбцами.
margin-x
в .col-*
padding-x
в .col-*
justify-content-between
в .row
Маржа довольно сложная, поскольку она влияет на сумму ширины всех столбцов. Ширина + поле-х двух столбцов не должно превышать ширину .row
. В противном случае столбцы ломаются.
Общая ширина двух столбцов на MD-экране 91.667%
. Таким образом, у вас есть 8.333%
бесплатный сок. Вы можете контролировать, где использовать эти 8.333%
.
offset-md-1
, mr-auto
, ml-auto
и justify-content-between
, чтобы получить одинаковый результат: 8.333%
пробел между двумя столбцами.
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container-fluid mt-5">
<div class="row justify-content-between">
<div class="container1 col-12 col-md-6 bg-primary">
</div>
<div class="container2 col-12 col-md-5 offset-md-1 bg-danger ">
offset-md-1
</div>
</div>
</div>
<div class="container-fluid mt-5">
<div class="row justify-content-between">
<div class="container1 col-12 col-md-6 mr-auto bg-primary">
mr-auto
</div>
<div class="container2 col-12 col-md-5 bg-danger ">
</div>
</div>
</div>
<div class="container-fluid mt-5">
<div class="row justify-content-between">
<div class="container1 col-12 col-md-6 bg-primary">
</div>
<div class="container2 col-12 col-md-5 bg-danger ">
ml-auto
</div>
</div>
</div>
<div class="container-fluid mt-5">
<div class="row justify-content-between">
<div class="container1 col-12 col-md-6 bg-primary">
justify-content-between
</div>
<div class="container2 col-12 col-md-5 bg-danger ">
justify-content-between
</div>
</div>
</div>
Если вы хотите, чтобы между ними было 8.333% / 2
пробел. Вы не можете сделать это в bootstrap -4. Так что вам нужно использовать css
.
@media (min-width: 768px) {
.ml-md-0_5 {
margin-left: calc((100% / 12) / 2)
}
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container-fluid padding">
<div class="row">
<div class="container1 col-12 col-md-6 bg-primary">
</div>
<div class="container2 col-12 col-md-5 bg-danger ml-md-0_5">
ml-md-0_5
</div>
</div>
</div>
Теперь общая ширина + поля обоих столбцов 95.833%
. По умолчанию элементы выровнены по левому краю. Следовательно, 4.166%
свободный сок в правой части последнего столбца. Вы можете использовать его на x-стороне любого из столбцов, если вы sh так.
Как уже говорилось ранее, вы можете использовать padding-x
также, что я предпочитаю, потому что это не влияет на общую ширину колонны.