Значення чисел у "col-md-4", "col-xs-1", "col-lg-2" у Bootstrap


439

Мене плутають із сітковою системою у новому Bootstrap, особливо з такими класами:

col-lg-*
col-md-*
col-xs-*

(де * представляє деяке число).

Чи можете будь-хто пояснити наступне:

  1. Як це число вирівнює сітки?
  2. Як користуватися цими номерами?
  3. Що вони насправді представляють?

13
Ви знайдете пояснення тут . Ви можете використовувати номер у стовпці, як хочете, але переконайтесь, що сума номерів усіх стовпців в одному рядку повинна дорівнювати 12
Doan Cuong

Відповіді:


835

Застосовується лише для Bootstrap 3.

Ігноруючи букви (x s , sm , md , lg ) наразі , я розпочну з просто цифр ...

  • числа (1-12) являють собою частину загальної ширини будь-якого дільника
  • всі діви розділені на 12 стовпців
  • таким чином, col-*-6охоплює 6 з 12 стовпців (половина ширини), col-*-1212 12 стовпців (по всій ширині) тощо

Отже, якщо ви хочете, щоб два рівних стовпчики містили діл, пишіть

<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, оскільки ваші кривдні діви будуть стикатися до наступного ряду (ні .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>

Кожен набір вкладених дівок також охоплює до 12 стовпців свого батьківського діла. ПРИМІТКА. Оскільки в кожному .colкласі є розміщення 15 пікселів з обох боків, зазвичай слід загортати вкладені стовпці в .row, які мають -15px поля. Це дозволяє уникнути дублювання прокладки і зберігає вміст, розташований між вкладеними та не вкладеними класами col.

- Ви спеціально не питали про xs, sm, md, lgвикористання, але вони йдуть рука об руку, тому я не можу не торкнутися цього ...

Коротше кажучи, вони використовуються для визначення розміру екрана, який повинен застосовувати цей клас:

  • xs = додаткові маленькі екрани (мобільні телефони)
  • sm = маленькі екрани (планшети)
  • md = середні екрани (деякі настільні)
  • lg = великі екрани (решта робочих столів)

Прочитайте розділ " Параметри сітки " з офіційної документації на завантаження для отримання більш детальної інформації.

Зазвичай слід класифікувати div за допомогою декількох класів стовпців, щоб він поводився по-різному, залежно від розміру екрана (саме в цьому полягає реакція на завантажувальну систему). наприклад: діва з класами col-xs-6і col-sm-4буде охоплювати половину екрана на мобільному телефоні (xs) та 1/3 екрана на планшетах (sm).

<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 кол, якщо ви знаєте, як вони будуть реагувати. - Це спірне питання, і не всі згодні.


38
Варто також зазначити, що класи сітки для заданого розміру екрана застосовуються до екранів такого розміру і більше , якщо додатково не перекрито. Наприклад, .col-xs-2.col-sm-2.col-lg-7еквівалентно. col-xs-2.col-lg-7
cvrebert

5
Потрібно внести виправлення у свій приклад щодо гніздування. Для введення потрібно вставити рядок у стовпець, який ви вкладаєте інші стовпці всередині. Якщо не додавати рядок, у вас виникне подвійне прокладка. Для кращого розуміння цього, дивіться схему в моїй обороні тут: stackoverflow.com/questions/23899715 / ...
jme11

1
дуже приємне пояснення, дякую. Я люблю трохи про обгортання .colsв , .rowщоб уникнути і cacel відступи. Мені завжди було цікаво, навіщо використовувати рядок і яку різницю він має.
Rishiraj Purohit

Але в документації здається, що загальна ширина divs перевищує більше 12, до 18 для 'xs'. Перегляньте розділ "Змішані: мобільний та настільний", і чому це так? getbootstrap.com/docs/3.3/examples/grid
Мішель

@Michel, схоже, ви нерозумієте їх документацію. вони показують два варіанти xs - один для 12 стовпців (повна ширина) і один для 6 стовпців (половина ширини). Ви побачите, що ці стовпці також показують lg-8 та lg-4 - те, що вони вам показують, - це те, що вони матимуть 8 та 4 стовпці (2/3 + 1/3 загальної ширини ширини) на великих дисплеях та 12 та 6 (повна ширина + 1/2 наступного ряду) на дисплеях телефону. сподіваюся, що допомагає!
Шон Тейлор

46

Сітка Bootstrap має чотири класи:
xs (для телефонів)
sm (для планшетів)
md (для настільних ПК)
lg (для більших настільних ПК)

Наведені вище класи можна комбінувати для створення більш динамічних та гнучких макетів.

Порада. Кожен клас збільшує масштаб, тому якщо ви хочете встановити однакові ширини для xs та sm, вам потрібно лише вказати xs.

Гаразд, відповідь проста, але читайте далі:

col-lg- стоїть для великих стовпців ≥ 1200px
col-md- для середніх стовпців ≥ 992px
col-xs- - для стовпчиків надзвичайно малих≥ 768px

Номери пікселів є точками перерви, тому, наприклад, націляєтьсяcol-xs на елемент, коли вікно менше 768 пікселів (ймовірно мобільні пристрої) ...

Я також створив зображення нижче , щоб показати , як система сітки працює, в цьому прикладі я використовую їх з 3, як col-lg-6показати вам , як підвісна система роботи на сторінці, подивіться на те, як lg, mdі xsреагують на розмір вікна:

Сітка завантажувальної системи, col - * - 6


col-xs-*були скинуті в Bootstrap 4 на користьcol-*
Зохаб Алі

Будь ласка, поділіться HTML (і можливим будь-яким CSS)? Дякую.
NoChance

11

Основний момент у цьому:

col-lg-* col-md-* col-xs-* col-sm визначте, скільки стовпців буде у цих різних розмірах екрана.

Приклад: якщо ви хочете, щоб на екранах робочого столу було два стовпчики, а на екранах телефону - ви ставите два col-md-6та два col-xs-6класи у своїх стовпцях.

Якщо ви хочете, щоб на екранах робочого столу були два стовпці і лише один стовпець на екранах телефону (тобто два ряди, складені один на одного), ви ставите two col-md-6і два col-xs-12у своїх стовпцях, і тому що сума складе 24, вони автоматично складатимуться вгорі кожного іншим або просто залиште xsстиль.



6

Ось ви йдете

col-lg-2: якщо екран великий ( lg ), то цей компонент займе простір з 2-х елементів, враховуючи, що цілий рядок може вмістити 12 елементів (тому ви побачите, що на великому екрані цей компонент займає 16% простору рядка)

col-lg-6: якщо екран великий ( lg ), то цей компонент займе простір з 6 елементів, враховуючи, що весь ряд може вмістити 12 елементів - при застосуванні ви побачите, що компонент зайняв половину наявного місця в рядку.

Наведене вище правило застосовується лише тоді, коли екран великий. коли екран невеликий, це правило відкидається, і відображається лише один компонент на рядок.

Нижче зображено різні ширини екрана:

визначення розмірів екрана

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.