Обзор
Компоненты и опции для создания вашего проекта Bootstrap, включая контейнеры для упаковки, мощную сетчатую систему, гибкий медиа-объект и отзывчивые служебные классы.
Контейнеры
Это базовый элемент в Bootstrap и они необходимы при использовании нашей стандартной сеточной системы. Контейнеры используются для размещения в них содержимого, дополнений и (иногда) центрирования содержимого внутри них. Хотя контейнеры могут быть вложенными, большинство макетов не требуют вложенного контейнера.
В Bootstrap используется три разных типа контейнеров:
.container, который устанавливает максимальную ширинуmax-widthв каждой контрольной точке;.container-fluid, ширина которогоwidth: 100%на всех контрольных точках;.container-{breakpoint}, то есть ширинаwidth: 100%до указанной контрольной точки.
В приведенной ниже таблице показано, как максимальная ширина max-width каждого контейнера .container и .container-fluid сравнивается с исходными в каждой контрольной точке.
Посмотрите их в действии и сравните их в нашем примере Сеток.
![]() Extra small <576px | ![]() Small ≥576px | ![]() Medium ≥768px | ![]() Large ≥992px | ![]() Extra large ≥1200px | |
|---|---|---|---|---|---|
.container | 100% | 540px | 720px | 960px | 1140px |
.container-sm | 100% | 540px | 720px | 960px | 1140px |
.container-md | 100% | 100% | 720px | 960px | 1140px |
.container-lg | 100% | 100% | 100% | 960px | 1140px |
.container-xl | 100% | 100% | 100% | 100% | 1140px |
.container-fluid | 100% | 100% | 100% | 100% | 100% |
Все в одном
По умолчанию класс .container является отзывчивым контейнером фиксированной ширины, что означает, что его максимальная ширина max-width изменяется в каждой контрольной точке.
<divclass="container"><!-- Content here --></div>Изменчивый
Используйте .container-fluid для создания контейнера полной ширины, охватывающего всю ширину области просмотра.
<divclass="container-fluid"> ...
</div>Отзывчивый
Отзывчивые контейнеры появились в Bootstrap версии 4.4. Они позволяют указывать класс шириной 100%, пока не будет достигнута указанная контрольная точка, после чего мы применяем max-width для каждой из более высоких контрольных точках. Например, .container-sm имеет иметь ширину в 100% до тех пор, пока не будет достигнута контрольная точка sm, где он будет масштабироваться уже с помощью md, lg и xl.
<divclass="container-sm">ширина 100% до маленькой (small) контрольной точки</div><divclass="container-md">ширина 100% до средней (medium) контрольной точки</div><divclass="container-lg">ширина 100% до большой (large) контрольной точки</div><divclass="container-xl">ширина 100% до экстра большой (Extra large) контрольной точки</div>Отзывчивые контрольные точки
Поскольку Bootstrap в первую очередь разработан для мобильных устройств, мы используем несколько медиа-запросов для создания разумных контрольных точек для наших макетов и интерфейсов. Эти контрольные точки в основном основаны на минимальной ширине области просмотра и позволяют масштабировать элементы по мере изменения области просмотра.
Bootstrap в основном использует следующие диапазоны медиа-запросов - или контрольные точки - в наших исходных файлах Sass для нашей разметки, системы сеток и компонентов.
// Очень маленькие устройства (портретные телефоны, менее 576 пикселей)
// Нет медиа-запроса для `xs`, так как это значение по умолчанию в Bootstrap
// Небольшие устройства (телефоны с горизонтальной ориентацией, 576 пикселей и выше)
@media(min-width:576px){...}// Средние устройства (планшеты, 768 пикселей и выше)
@media(min-width:768px){...}// Большие устройства (настольные компьютеры, 992 пикселей и выше)
@media(min-width:992px){...}// Очень большие устройства (большие рабочие столы, 1200 пикселей и выше)
@media(min-width:1200px){...}Поскольку мы пишем наш исходный CSS на Sass, все наши медиа-запросы доступны через миксины Sass:
// Для контрольной точки xs не требуется медиа-запрос, поскольку он фактически `@media (min-width: 0) { ... }`
@include media-breakpoint-up(sm){...}@include media-breakpoint-up(md){...}@include media-breakpoint-up(lg){...}@include media-breakpoint-up(xl){...}// Пример: Скрыть начало с `min-width: 0`, а затем показать в контрольной точке`sm`
.custom-class{display:none;}@include media-breakpoint-up(sm){.custom-class{display:block;}}Иногда мы используем медиа-запросы, идущие в другом направлении (заданный размер экрана или меньше):
// Очень маленькие устройства (портретные телефоны, менее 576 пикселей)
@media(max-width:575.98px){...}// Небольшие устройства (телефоны с горизонтальной ориентацией, менее 768 пикселей)
@media(max-width:767.98px){...}// Средние устройства (планшеты, менее 992 пикселей)
@media(max-width:991.98px){...}// Большие устройства (настольные компьютеры, менее 1200 пикселей)
@media(max-width:1199.98px){...}// Очень большие устройства (большие рабочие столы)
// Нет медиа-запроса, так как очень большая контрольная точка не имеет верхней границы ширины
min- и max- префиксов и области просмотра с дробной шириной (что может происходить при определенных условиях, например, на устройствах с высоким разрешением) использование значений с более высокой точностью для этих сравнений.
Еще раз, эти медиа-запросы также доступны через миксины Sass:
@include media-breakpoint-down(xs){...}@include media-breakpoint-down(sm){...}@include media-breakpoint-down(md){...}@include media-breakpoint-down(lg){...}// Для контрольной точки xl не требуется медиа-запрос, так как он не имеет верхней границы ширины
// Пример: стиль от средней контрольной точки и ниже
@include media-breakpoint-down(md){.custom-class{display:block;}}Существуют также медиа-запросы и миксины для нацеливания на один сегмент размеров экрана с использованием минимальной и максимальной ширины контрольной точки.
// Очень маленькие устройства (портретные телефоны, менее 576 пикселей)
@media(max-width:575.98px){...}// Небольшие устройства (телефоны с горизонтальной ориентацией, 576 пикселей и выше)
@media(min-width:576px)and(max-width:767.98px){...}// Средние устройства (планшеты, 768 пикселей и выше)
@media(min-width:768px)and(max-width:991.98px){...}// Большие устройства (настольные компьютеры, 992 пикселей и выше)
@media(min-width:992px)and(max-width:1199.98px){...}// Очень большие устройства (большие рабочие столы, 1200 пикселей и выше)
@media(min-width:1200px){...}Эти медиа-запросы также доступны через миксины Sass:
@include media-breakpoint-only(xs){...}@include media-breakpoint-only(sm){...}@include media-breakpoint-only(md){...}@include media-breakpoint-only(lg){...}@include media-breakpoint-only(xl){...}Точно так же медиа-запросы могут охватывать несколько значений ширины контрольной точки:
// Пример
// Применяйте стили, начиная со средних и заканчивая очень большими.
@media(min-width:768px)and(max-width:1199.98px){...}Миксин Sass для таргетинга на тот же диапазон размеров экрана:
@include media-breakpoint-between(md,xl){...}Z-индекс
Некоторые компоненты Bootstrap используют z-index, свойство CSS, которое помогает управлять макетом, предоставляя третью ось для упорядочивания содержимого. Мы используем шкалу z-индекса по умолчанию в Bootstrap, которая была разработана для правильного разделения навигации, всплывающих и всплывающих подсказок, модальных окон и многого другого.
Эти более высокие значения начинаются с произвольного числа, достаточно большого и достаточно конкретного, чтобы в идеале избежать конфликтов. Нам нужен стандартный набор этих элементов для наших многоуровневых компонентов - всплывающие подсказки, всплывающие окна, панели навигации, раскрывающиеся списки, модальные окна - чтобы мы могли быть достаточно последовательными в поведении. Нет причин, по которым мы не могли использовать 100+ или 500+.
Мы не поощряем настройку этих индивидуальных значений; если Вы измените один, Вам, вероятно, придется изменить их все.
$zindex-dropdown:1000!default;$zindex-sticky:1020!default;$zindex-fixed:1030!default;$zindex-modal-backdrop:1040!default;$zindex-modal:1050!default;$zindex-popover:1060!default;$zindex-tooltip:1070!default;Чтобы обрабатывать перекрывающиеся границы внутри компонентов (например, кнопок и входов в группах ввода), мы используем малые однозначные значения z-index, равные 1, 2 и 3 для состояний по умолчанию, при наведении курсора и активного состояния. При наведении/фокусе/активном мы выводим конкретный элемент на передний план с более высоким значением z-index, чтобы показать его границу над соседними элементами.




