В чем разница между col-lg- *, col-md- * и col-sm- * в Bootstrap?

437

В чем разница между col-lg-*, col-md-* и col-sm-* в Twitter Bootstrap?

  • 0
    См. Getbootstrap.com/css для размеров px каждого.
  • 5
    что я знаю, но не понимаю, это эффект
Показать ещё 1 комментарий
Теги:
bootstrap-4
twitter-bootstrap-3
responsive-design

9 ответов

449
Лучший ответ

Обновлено 2018...

Сетка Bootstrap 3 имеет 4 уровня (или "точки останова")...

  • Очень маленький (для смартфонов .col-xs-*)
  • Маленький (для планшетов .col-sm-*)
  • Средний (для ноутбуков .col-md-*)
  • Большой (для ноутбуков/настольных компьютеров .col-lg-*).

Эти размеры сетки позволяют контролировать поведение сетки по разной ширине. Различные уровни управляются запросами в формате CSS.

Итак, в 12-колоночной сетке Bootstrap...

col-sm-3 имеет ширину 3 из 12 колонок (25%) на типичной небольшой ширине устройства (> 768 пикселей)

col-md-3 имеет ширину 3 из 12 колонок (25%) на типичной ширине носителя (> 992 пикселя)


Меньший уровень (xs, sm или md) также определяет размер для большей ширины экрана. Итак, для столбца одинакового размера на всех уровнях просто установите ширину для самого маленького окна просмотра...

<div class="col-lg-3 col-md-3 col-sm-3">..</div> - это то же самое, что,

<div class="col-sm-3">..</div>

Подразумеваются более крупные уровни . Поскольку col-sm-3 означает 3 units on sm-and-up, если только они не переопределены более крупным ярусом, который использует другой размер.

xs (по умолчанию)> overridden by sm > overridden by md > overridden by lg


Объедините классы, чтобы использовать ширину столбцов изменения для разных размеров сетки. Это создает отзывчивый макет.

<div class="col-md-3 col-sm-6">..</div>

Сетки sm, md и lg будут "стекаться" вертикально на экранах/видовых экранах менее 768 пикселей. Здесь помещается сетка xs. Столбцы, использующие col-xs-*, не будут складываться вертикально и будут уменьшаться на самых маленьких экранах.

Измените размер своего браузера, используя эту демонстрацию, и вы увидите эффекты масштабирования сетки.


В Bootstrap 4 есть новый -xl- размер, см. Эту демонстрацию. Также была удалена -xs- infix, поэтому наименьшие столбцы - это просто col-1, col-2.. col-12 и т.д.

col-* - 0 (xs)
col-sm-* - 576px
col-md-* - 768px
col-lg-* - 992px
col-xl-* - 1200px

Bootstrap 4 Grid Demo

Кроме того, в этой статье объясняется больше о сетке Bootstrap

  • 7
    Каков эффект от гнездования col-sm внутри col-md? Как это изменит поведение col-sm и col-md?
  • 1
    Это приводит к тому, что вложенные sm остаются в столбцах с более узкой шириной. Попробуйте сами: codeply.com/go/LGyFiEJqXq
Показать ещё 4 комментария
211

Загрузочный docs объясняет это, но мне все же понадобилось некоторое время, чтобы получить его. Это имеет смысл, когда я объясняю это себе одним из двух способов:

Если вы думаете о том, что столбцы начинаются горизонтально, вы можете выбрать, когда вы хотите, чтобы они стекали.

Например, если вы начинаете с столбцов: A B C

Вы решаете, когда они должны складываться так:

А

В

С

Если вы выберете col-lg, то столбцы будут стекаться, когда ширина равна < 1200px.

Если вы выберете col-md, тогда столбцы будут стекаться, когда ширина равна < 992px.

Если вы выберете col-sm, то столбцы будут стекаться, когда ширина равна < 768px.

Если вы выберете col-xs, столбцы никогда не будут стекаться.

С другой стороны, если вы думаете о столбцах, начинающихся с укладки, то вы можете выбрать, в какой точке они станут горизонтальными.:

Если вы выберете col-sm, то столбцы станут горизонтальными, если ширина равна = 768px.

Если вы выберете col-md, столбцы станут горизонтальными, если ширина равнa >= 992px.

Если вы выберете col-lg, столбцы станут горизонтальными, если ширинa >= 1200px.

  • 25
    Этот ответ объясняет это лучше всего. По крайней мере, для меня это так. Это было все, что мне нужно было знать: «Если вы выберете col-lg, столбцы будут складываться, когда ширина будет <1200 пикселей». Спасибо!
  • 1
    Это то, как вы объясняете в поездке на лифте и все еще понимаете свое объяснение
Показать ещё 4 комментария
54

От Twitter Загрузочная документация:

  • маленькая сетка (≥ 768px) = .col-sm-*,
  • средняя сетка (≥ 992px) = .col-md-*,
  • большая сетка (≥ 1200px) = .col-lg-*.
23

Я думаю, что запутанный аспект этого заключается в том, что BootStrap 3 - это мобильная система с высокой чувствительностью и не может объяснить, как это влияет на иерархию col-xx-n в той части документации Bootstrap. Это заставляет вас задаться вопросом, что происходит на более мелких устройствах, если вы выберете значение для более крупных устройств и заинтересуетесь, нужно ли указывать несколько значений. (Вы этого не делаете)

Я попытался бы разъяснить это, заявив, что... Более низкие типы зерен (xs, sm) пытаются сохранить внешний вид макета на меньших экранах, а более крупные типы (md, lg) будут отображаться корректно только на больших экранах, но будут обертывать столбцы на более мелкие устройства. Значения, приведенные в предыдущих примерах, относятся к порогу, в котором загрузочный диск ухудшает внешний вид, чтобы соответствовать доступному состоянию экрана.

На практике это означает, что если вы создадите столбцы col-xs-n, то они сохранят правильный внешний вид даже на очень маленьких экранах, пока окно не упадет до размера, который настолько ограничительный, что страница не может быть отображена правильно, Это должно означать, что устройства с шириной 768 пикселей или менее должны показывать вашу таблицу, как вы ее разрабатывали, а не в деградированной (одинарной или упакованной форме столбца). Очевидно, что это все еще зависит от содержания столбцов и от того, что весь смысл. Если страница пытается отобразить несколько столбцов больших данных, бок о бок на маленьком экране, то столбцы будут естественно обернуться ужасно, если вы не учтете это. Поэтому, в зависимости от данных в столбцах, вы можете определить точку, в которой макет будет использоваться для адекватного отображения контента.

например. Если ваша страница содержит три столбца столбцов col-sm-n, они будут помещать столбцы в строки, когда ширина страницы падает ниже 992 пикселей. Это означает, что данные все еще видны, но для просмотра требуется вертикальная прокрутка. Если вы не хотите, чтобы ваш макет деградировал, выберите xs (пока ваши данные могут быть адекватно отображены на устройстве с более низким разрешением в трех столбцах)

Если горизонтальное положение данных важно, вы должны попытаться выбрать более низкие значения гранулярности, чтобы сохранить визуальный характер. Если позиция менее важна, но страница должна быть видимой на всех устройствах, следует использовать более высокое значение.

Если вы выберете col-lg-n, столбцы будут отображаться правильно, пока ширина экрана не упадет ниже порога xs 1200px.

  • 5
    Я предполагаю, что это то, о чем просил ФП (а не необработанные цифры), но его обожгли.
  • 0
    Я согласен, что это должен быть принятый ответ, так как он точно описывает поведение разных размеров.
8

Размеры устройства и префикс класса:

  • Дополнительные мелкие устройства Телефоны (< 768px) - .col-xs-
  • Маленькие устройства Таблетки (≥768px) - .col-sm-
  • Средние устройства Настольные компьютеры (≥992px) - .col-md-
  • Крупные устройства Настольные компьютеры (≥1200px) - .col-lg-

Параметры сетки:

Изображение 2319

Ссылка: Grid System

4
.col-xs-$   Extra Small     Phones Less than 768px 
.col-sm-$   Small Devices   Tablets 768px and Up 
.col-md-$   Medium Devices  Desktops 992px and Up 
.col-lg-$   Large Devices   Large Desktops 1200px and Up 
2

TL; DR

.col-XY означает размер экрана X и выше, растяните этот элемент, чтобы заполнить Y столбцов.

Bootstrap предоставляет сетку из 12 столбцов на .row, поэтому Y = 3 означает ширину = 25%.

xs, sm, md, lg - размеры для смартфона, планшета, ноутбука, рабочего стола соответственно.

Точка указания разной ширины на разных размерах экрана позволяет вам делать вещи более крупными на меньших экранах.

пример

<div class="col-lg-6 col-xs-12">

Значение: ширина 50% на рабочих столах, ширина 100% на мобильных устройствах, планшетах и ноутбуках.

1

Один конкретный случай: перед изучением системы сетки бутстрапов убедитесь, что значение масштабирования браузера установлено на 100% (на сто процентов). Например: Если разрешение экрана (1600 пикселей x 900 пикселей), а увеличение браузера составляет 175%, то элементы "bootstrap-ped" будут сложены.

HTML

<div class="container-fluid">
    <div class="row">
        <div class="col-lg-4">class="col-lg-4"</div>
        <div class="col-lg-4">class="col-lg-4"</div>
    </div>
</div>

Chrome zoom 100%

Браузер 100% - элементы, расположенные горизонтально

Chrome zoom 175%

Браузер 175% - сложенные элементы

0

хорошо он использовал, чтобы сообщить загрузочное число, сколько столбцов должно быть размещено в строке в зависимости от экрана size-

col-xs-2

будет отображать только 2 столбца в строке на дополнительном маленьком экране (xs), так же, как sm определяет маленький экран, md (средний размер), lg (большой размер), но согласно первому правилу bootstrap меньше, если вы отметите

xs-col-2 md-col-4

то в каждой строке будут отображаться 2 столбца для размеров экрана от xs до sm (включая) и изменяется при достижении следующего размера, т.е. для md до lg (в комплекте) для лучшего понимания размеров экрана попробуйте запустить их в различных режимах экрана в chrome (ctr + shift + i) и попробуйте различные пиксели или устройства

Ещё вопросы

Сообщество Overcoder
Наверх
Меню