Source

Тойм

Боодолтой сав, хүчирхэг сүлжээний систем, уян медиа объект, хариу үйлдэл үзүүлэх хэрэгслийн анги зэрэг Bootstrap төслийг боловсруулах бүрэлдэхүүн хэсгүүд болон сонголтууд.

Контейнер

Контейнерууд нь Bootstrap-ийн хамгийн энгийн зохион байгуулалтын элемент бөгөөд манай үндсэн сүлжээний системийг ашиглахад шаардлагатай байдаг . Савыг дотор нь агуулгыг агуулж, дэвсэж, (заримдаа) голчлоход ашигладаг. Савыг үүрлэж болох ч ихэнх загварт үүрлэсэн сав шаардлагагүй.

Bootstrap нь гурван өөр савтай ирдэг:

  • .containermax-width, энэ нь хариу үйлдэл үзүүлэх цэг бүрт a-г тогтоодог
  • .container-fluid, энэ нь width: 100%бүх таслах цэгүүдэд байна
  • .container-{breakpoint}, энэ нь width: 100%заасан таслах цэг хүртэл байна

Доорх хүснэгтэд чингэлэг тус бүрийг max-widthанхны .containerболон .container-fluidтаслах цэг бүртэй хэрхэн харьцуулж байгааг харуулж байна.

Тэдгээрийг ажиллаж байгаа байдлаар нь харж, манай Grid жишээн дээр харьцуулаарай .

Хэт жижиг
<576px
Жижиг
≥576px
Дунд зэргийн
≥768px
Том
≥992px
Хэт том
≥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таслах цэг бүрт түүний өөрчлөлтийг илэрхийлдэг.

<div class="container">
  <!-- Content here -->
</div>

Шингэн

.container-fluidХарах цонхны өргөнийг бүхэлд нь хамарсан бүрэн өргөнтэй саванд ашиглаарай .

<div class="container-fluid">
  ...
</div>

Хариуцлагатай

Responsive контейнерууд Bootstrap v4.4-д шинээр ирлээ. Эдгээр нь заасан таслах цэгт хүрэх хүртэл 100% өргөнтэй ангиллыг зааж өгөх боломжийг олгодог бөгөөд үүний дараа бид max-widthдээд цэг бүрт s-г хэрэглэнэ. Жишээлбэл, , , болон гэсэн тэмдэгтээр томрох цэгт хүрэх .container-smхүртэл эхлэхийн тулд 100% өргөн байна .smmdlgxl

<div class="container-sm">100% wide until small breakpoint</div>
<div class="container-md">100% wide until medium breakpoint</div>
<div class="container-lg">100% wide until large breakpoint</div>
<div class="container-xl">100% wide until extra large breakpoint</div>

Хариуцах цэгүүд

Bootstrap нь хамгийн түрүүнд хөдөлгөөнт төхөөрөмж байхаар бүтээгдсэн тул бид хэд хэдэн медиа асуулга ашиглан өөрийн зохион байгуулалт, интерфэйсүүдэд ойлгомжтой цэгүүдийг бий болгодог. Эдгээр таслах цэгүүд нь ихэвчлэн харах цонхны хамгийн бага өргөнд суурилдаг бөгөөд харагдах хэсэг өөрчлөгдөхөд элементүүдийн хэмжээг нэмэгдүүлэх боломжийг олгодог.

Bootstrap нь үндсэн Sass файлууд дахь манай зохион байгуулалт, сүлжээний систем болон бүрэлдэхүүн хэсгүүдэд дараах медиа асуулгын хүрээ буюу таслах цэгүүдийг ашигладаг.

// Extra small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) { ... }

// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }

Бид эх CSS-ээ Sass хэл дээр бичдэг тул бидний бүх медиа асуулгыг Sass mixins-ээр авах боломжтой:

// No media query necessary for xs breakpoint as it's effectively `@media (min-width: 0) { ... }`
@include media-breakpoint-up(sm) { ... }
@include media-breakpoint-up(md) { ... }
@include media-breakpoint-up(lg) { ... }
@include media-breakpoint-up(xl) { ... }

// Example: Hide starting at `min-width: 0`, and then show at the `sm` breakpoint
.custom-class {
  display: none;
}
@include media-breakpoint-up(sm) {
  .custom-class {
    display: block;
  }
}

Бид хааяа өөр чиглэлд (өгөгдсөн дэлгэцийн хэмжээ эсвэл түүнээс бага ) медиа асуулга ашигладаг.

// Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }

// Small devices (landscape phones, less than 768px)
@media (max-width: 767.98px) { ... }

// Medium devices (tablets, less than 992px)
@media (max-width: 991.98px) { ... }

// Large devices (desktops, less than 1200px)
@media (max-width: 1199.98px) { ... }

// Extra large devices (large desktops)
// No media query since the extra-large breakpoint has no upper bound on its width

Хөтөчүүд одоогоор хүрээний контекст асуулгыг дэмждэггүй тул бид эдгээр харьцуулалтад илүү нарийвчлалтай утгуудыг ашиглан бутархай өргөнтэй угтвар min-болонmax- харах цонхны хязгаарлалтыг тойрон ажилладаг болохыг анхаарна уу (жишээ нь өндөр dpi төхөөрөмж дээр тодорхой нөхцөлд тохиолдож болно). .

Дахин хэлэхэд эдгээр медиа асуулга нь Sass mixins-ээр дамжуулан боломжтой:

@include media-breakpoint-down(xs) { ... }
@include media-breakpoint-down(sm) { ... }
@include media-breakpoint-down(md) { ... }
@include media-breakpoint-down(lg) { ... }
// No media query necessary for xl breakpoint as it has no upper bound on its width

// Example: Style from medium breakpoint and down
@include media-breakpoint-down(md) {
  .custom-class {
    display: block;
  }
}

Мөн хамгийн бага ба хамгийн их таслах цэгийн өргөнийг ашиглан дэлгэцийн нэг сегментийг чиглүүлэх медиа асуулга болон холимгууд байдаг.

// Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) and (max-width: 767.98px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) and (max-width: 991.98px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) and (max-width: 1199.98px) { ... }

// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }

Эдгээр медиа асуулга мөн Sass mixins-ээр боломжтой:

@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) { ... }

Үүний нэгэн адил медиа асуулга нь хэд хэдэн таслах цэгийн өргөнийг хамарч болно:

// Example
// Apply styles starting from medium devices and up to extra large devices
@media (min-width: 768px) and (max-width: 1199.98px) { ... }

Дэлгэцийн ижил хэмжээний мужид чиглүүлэх Sass хольц нь:

@include media-breakpoint-between(md, xl) { ... }

Z индекс

Хэд хэдэн Bootstrap бүрэлдэхүүн хэсгүүд нь z-indexагуулгыг зохицуулах гуравдагч тэнхлэгээр хангаснаар зохион байгуулалтыг удирдахад тусалдаг CSS шинж чанарыг ашигладаг. Бид Bootstrap-д навигаци, хэрэгслийн зөвлөмж, поповер, модаль гэх мэтийг зөв давхаргаар тохируулах зориулалттай анхдагч z-индекс масштабыг ашигладаг.

Эдгээр өндөр утгууд нь зөрчилдөөнөөс зайлсхийхэд хангалттай өндөр бөгөөд тодорхой тооноос эхэлдэг. Бидэнд эдгээрийн стандарт иж бүрдэл нь бидний зан үйлийн хувьд нийцтэй байхын тулд зааварчилгаа, popover, navbar, dropdown, modal зэрэг давхаргат бүрэлдэхүүн хэсгүүдэд хэрэгтэй. 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өгөгдмөл , хулганаа аваач, идэвхтэй төлөвт ашигладаг. Зогсоох/фокус/идэвхтэй үед бид ах дүү элементүүдийн хилийг харуулахын тулд илүү өндөр утгатай тодорхой элементийг тэргүүн эгнээнд авчирдаг .123z-index