В Bootstrap 4 я хочу, чтобы равное количество элементов split (.col) переместилось на следующую строку после любого числа столбцов. Для этого bootstrap хочет, чтобы мы использовали класс (.w-100).
Это работает успешно, но этот невидимый div предотвращает правильное распределение элементов, как будто они занимают место на вертикальной оси.
Вы можете увидеть это в примере ниже.
.wrapper
{
background: lightgray;
height: 100vh;
}
.col
{
background: green;
box-shadow: inset 0 0 0 2px white;
}
.w-100
{
background: red;
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<div class="wrapper">
<div class="row" style="height: 100%">
<div class="col">
</div>
<div class="col">
</div>
<div class="col">
</div>
<div class="w-100">
</div>
<div class="col">
</div>
<div class="col">
</div>
</div>
</div>
Область, показанная здесь с красным фоном, на самом деле является разделителем и не должна отображаться физически, так что зеленые элементы на двух отдельных строках растягиваются в объеме, равном 2. 2. 1013 *
Проблема здесь в том, что я могу поставить элемент делителя (.w-100) после любого количества элементов (.col). это должно быть динамично c.
Вот почему я иду по этому пути. В противном случае, если бы было определенное число (.col-0 ... 12), я мог бы решить его с помощью его свойства.
Есть ли решение для этого, так что игнорируя этот красный элемент в гибком распространении?
Конечно, я попытался установить высоту элемента делителя здесь 0. Но даже если у него нет собственной высоты, элементы не делятся на 2 одинаково. Пример ниже.
.wrapper
{
background: lightgray;
height: 100vh;
}
.col
{
background: green;
box-shadow: inset 0 0 0 2px white;
}
.w-100
{
background: red;
height: 0 !important;
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<div class="wrapper">
<div class="row" style="height: 100%">
<div class="col">
</div>
<div class="col">
</div>
<div class="col">
</div>
<div class="w-100">
</div>
<div class="col">
</div>
<div class="col">
</div>
</div>
</div>
Как вы думаете, это ошибка?