Bootstrap Grid System
Bootstrap табличная система позволяет создать до 12 столбцов на странице.
Если вы хотите использовать меньшее количество столбцов, можно группировать столбцы вместе, чтобы создавать более широкие столбцы:
Столбцы Bootstrap Grid System будут перестраиваться автоматически в зависимости от размера экрана.
Для создания строки со столбцами нужно создать контейнер с классом. row, например, <div class=«row»>, в который включить столбцы:
<div class=«row»>
<div class=«col-*-*"> </div>
<div class=«col-*-*"> </div>
<div class=«col-*-*"> </div>
</div>
Выглядеть это будет следующим образом:
Вместо первой звездочки можно поставить один из четырех классов:
xs – для телефонов
sm – для планшетов
md – для настольных компьютеров
lg – для больших мониторов
Вместо второй звездочки указывается, сколько столбцов из 12 данный столбец объединяет.
Например, если указать col-md-6:
<div class=«row»>
<div class=«col-md-6»> col-md-6 </div>
<div class=«col-md-6»> col-md-6 </div>
</div>
Тогда для настольных компьютеров и больше это будет строка из двух столбцов, а для планшетов и телефонов это будут две строки:
Или если вы хотите сделать:
1 колонка для небольших устройств
2 колонки для малых и средних устройств
4 колонки для больших устройств
Тогда укажите:
<div class=«row»>
<div class=«col-sm-6 col-lg-3»>
This is part of our grid.
</div>
<div class=«col-sm-6 col-lg-3»>
This is part of our grid.
</div>
<div class=«col-sm-6 col-lg-3»>
This is part of our grid.
</div>
<div class=«col-sm-6 col-lg-3»>
This is part of our grid.
</div>
</div>
Если у вас есть четыре столбца разной высоты:
Тогда при уменьшении размера экрана, четыре столбца в одной строке не будут преобразовываться в две строки по два столбца:
Чтобы достичь этого, нужно применить блок:
<div class=«clearfix visible-xs-block»> </div>
<div class=«clearfix visible-sm-block»> </div>
<section class=«row»>
<section class=«col-xs-6 col-sm-6 col-md-3 col-lg-3»>
<div class=«alert alert-danger»> Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. </div>
</section>
<section class=«col-xs-6 col-sm-6 col-md-3 col-lg-3»>
<div class=«alert alert-info»> Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. </div>
</section>
<div class=«clearfix visible-xs-block»> </div>
<div class=«clearfix visible-sm-block»> </div>
<section class=«col-xs-6 col-sm-6 col-md-3 col-lg-3»>
<div class=«alert alert-info»> Lorem ipsum dolor sit amet. </div>
</section>
<section class=«col-xs-6 col-sm-6 col-md-3 col-lg-3»>
<div class=«alert alert-info»> Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros. </div>
</section>
</section>
Здесь для управления видимостью элемента используется класс visible. Для сокрытия элемента используется класс hidden:
Таким образом, если применить класс visible-sm-block, элемент будет виден только на планшете, если применить класс hidden-sm, элемент будет скрыт на планшетах.
Для увеличения отступа между столбцами, можно использовать класс col-*-offset-*, где первая звездочка это классы xs, sm, md, lg (обычно используют только md), а вторая звездочка это значение от 1 до 11. При использовании этого класса, за сценой применяется свойство margin-left.
Перемещать столбцы вправо или влево можно с помощью классов col-md-push-* и col-md-pull-* соответственно, где звездочка это значение от 1 до 11. При этом за сценой используется CSS свойство left: и right:.
<div class=«col-md-4 col-md-push-4»> <p> green pushed 4 </p> </div>
<div class=«col-md-4 col-md-pull-4»> <p> red pulled 4 </p> </div>