Поскольку вы разделяете столбцы по строкам, именно поэтому вы получаете 5-й столбец, который отображается сам по себе.Единственный способ получить то, что вы хотите, это, вероятно, не использовать столбцы Bootstrap и устанавливать ширину вручную - помните, что Bootstrap не собирается делать все за вас все время.Таким образом, ширина 20% будет равна 5 столбцам, а 25% соответствует 4 столбцам.Например, это быстрый и грязный пример.
.col {
float: left;
width: 20%;
background-color: red;
}
@media (max-width: 768px) {
.col {
width: 25%;
}
}
<div class='parent'>
<div class='col'>1</div>
<div class='col'>2</div>
<div class='col'>3</div>
<div class='col'>4</div>
<div class='col'>5</div>
<div class='col'>6</div>
<div class='col'>7</div>
<div class='col'>8</div>
<div class='col'>9</div>
<div class='col'>10</div>
</div>