Я запутался с сеткой в новом бутстрапе, особенно в этих классах:
col-lg-*
col-md-*
col-xs-*
(где * обозначает некоторое число)
может кто-нибудь объяснить, как этот номер выравнивает сетки и как использовать эти числа и то, что они фактически представляют
Игнорирование букв (xs, sm, md, lg) пока, я начну с цифр...
col-*-6
охватывает 6 из 12 столбцов (половина ширины), col-*-12
охватывает 12 из 12 столбцов (вся ширина) и т.д.Итак, если вы хотите, чтобы два равных столбца охватывали div, пишите
<div class="col-xs-6">Column 1</div>
<div class="col-xs-6">Column 2</div>
Если вы хотите, чтобы три неравных столбца охватывали ту же ширину, вы можете написать:
<div class="col-xs-2">Column 1</div>
<div class="col-xs-6">Column 2</div>
<div class="col-xs-4">Column 3</div>
Вы заметите, что число столбцов всегда равно 12. Это может быть меньше двенадцати, но будьте осторожны, если больше 12, так как ваши оскорбительные divs будут удаляться до следующей строки (не .row
, которая другая история вообще).
Вы также можете размещать столбцы в столбцах (лучше всего с оберткой .row
), например:
<div class="col-xs-6">
<div class="row">
<div class="col-xs-4">Column 1-a</div>
<div class="col-xs-8">Column 1-b</div>
</div>
</div>
<div class="col-xs-6">
<div class="row">
<div class="col-xs-2">Column 2-a</div>
<div class="col-xs-10">Column 2-b</div>
</div>
</div>
Каждый набор вложенных div также охватывает до 12 столбцов их родительского div. ПРИМЕЧАНИЕ.. Поскольку каждый класс .col
имеет 15px дополнение с обеих сторон, вы обычно должны обернуть вложенные столбцы в .row
, который имеет поля -15px. Это позволяет избежать дублирования отступов и сохраняет содержимое, выровненное между вложенными и не вложенными классами col.
- Вы специально не спрашивали об использовании xs, sm, md, lg
, но они идут рука об руку, поэтому я не могу не касаться этого...
Короче говоря, они используются для определения размера экрана, который должен применять класс:
Обычно вы должны классифицировать div, используя несколько классов столбцов, чтобы он вел себя по-разному в зависимости от размера экрана (это является основой того, что делает бутстрап отзывчивым). например: div с классами col-xs-6
и col-sm-4
будет охватывать половину экрана на мобильном телефоне (xs) и 1/3 экрана на планшетах (см).
<div class="col-xs-6 col-sm-4">Column 1</div> <!-- 1/2 width on mobile, 1/3 screen on tablet) -->
<div class="col-xs-6 col-sm-8">Column 2</div> <!-- 1/2 width on mobile, 2/3 width on tablet -->
ПРИМЕЧАНИЕ: в соответствии с комментарием ниже, классы сетки для данного размера экрана применяются к размеру экрана и больше, если другое объявление не отменяет его (т.е. col-xs-6 col-md-4
охватывает 6 столбцы на xs
и sm
и 4 столбца на md
и lg
, хотя sm
и lg
никогда не были явно объявлены)
ПРИМЕЧАНИЕ:, если вы не определяете xs
, по умолчанию будет col-xs-12
(т.е. col-sm-6
составляет половину ширины на sm
, md
и lg
экраны, но полноразмерные на экранах xs
).
ПРИМЕЧАНИЕ: это действительно отлично, если ваш .row
включает более 12 колонок, если вы знаете, как они будут реагировать. - Это спорная проблема, и не все согласны.
.col-xs-2.col-sm-2.col-lg-7
эквивалентен. col-xs-2.col-lg-7
Система сетки Bootstrap имеет четыре класса:
xs (для телефонов)
см (для планшетов)
md (для настольных компьютеров)
lg (для больших настольных компьютеров)Вышеупомянутые классы могут быть объединены для создания более динамичных и гибких макетов.
Совет.. Каждый класс масштабируется, поэтому, если вы хотите установить одинаковые ширины для xs и sm, вам нужно только указать xs.
ОК, ответ прост, но читайте дальше:
col-lg - обозначает столбец большой ≥ 1200px
col-md - обозначает среду столбца ≥ 992px
col-xs - обозначает дополнительный столбец ≥ 768px
Число пикселей - это точки останова, поэтому, например, col-xs
нацеливается на элемент, когда окно меньше 768px (вероятные мобильные устройства)...
Я также создал изображение ниже, чтобы показать, как работает система сетки. В этом примере я использую их с 3, например col-lg-6
, чтобы показать вам, как работает сетка на странице, посмотрите, как lg
, md
и xs
реагируют на размер окна:
col-xs-*
были исключены в Bootstrap 4 в пользу col-*
От Twitter Загрузочная документация:
.col-sm-*
,.col-md-*
,.col-lg-*
.Главное:
col-lg-*
col-md-*
col-xs-*
col-sm
определить, сколько столбцов будет в этих разных размерах экрана.
Пример: если вы хотите, чтобы на экранах рабочего стола и на экранах телефона было два столбца, вы помещаете в свои столбцы два класса col-md-6
и два col-xs-6
.
Если вы хотите, чтобы на экранах рабочего стола было два столбца и только один столбец на экранах телефонов (т.е. два ряда, уложенных друг на друга), вы помещаете two col-md-6
и два col-xs-12
в свои столбцы и потому, что сумма будет 24 они будут автоматически складываться друг на друга или просто оставить стиль xs
.