Source

Apžvalga

„Bootstrap“ projekto išdėstymo komponentai ir parinktys, įskaitant pakavimo konteinerius, galingą tinklelio sistemą, lanksčią medijos objektą ir reaguojančias paslaugų klases.

Konteineriai

Sudėtiniai rodiniai yra pagrindinis „Bootstrap“ išdėstymo elementas ir būtini naudojant numatytąją tinklelio sistemą . Rinkitės iš jautraus fiksuoto pločio talpyklos (tai reiškia, kad jis max-widthkeičiasi kiekviename pertraukos taške) arba skysto pločio (tai reiškia, kad jis 100%platus visą laiką).

Nors sudėtinius rodinius galima įdėti, daugeliui maketų nereikia įdėti įdėto sudėtinio rodinio.

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

Naudokite .container-fluidviso pločio konteineriui, apimančiam visą peržiūros srities plotį.

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

Reaguojantys lūžio taškai

Kadangi „Bootstrap“ pirmiausia sukurta mobiliesiems, naudojame keletą medijos užklausų , kad sukurtume protingus išdėstymo ir sąsajų lūžio taškus. Šios pertraukos taškai dažniausiai pagrįsti minimaliu peržiūros srities pločiu ir leidžia mums padidinti elementų mastelį, kai keičiasi peržiūros sritis.

„Bootstrap“ pirmiausia naudoja šiuos medijos užklausų diapazonus arba lūžio taškus mūsų šaltinio „Sass“ failuose išdėstymui, tinklelio sistemai ir komponentams.

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

Kadangi šaltinio CSS rašome Sass, visos mūsų medijos užklausos pasiekiamos per Sass rinkinius:

// 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;
  }
}

Retkarčiais naudojame medijos užklausas, kurios nukreipiamos kita kryptimi (nurodytas ekrano dydis arba mažesnis ):

// 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

Atminkite, kad šiuo metu naršyklės nepalaiko diapazono konteksto užklausų , todėl apeiname trupmeninio pločio priešdėlius min-irmax- peržiūros sritis (kurie gali atsirasti tam tikromis sąlygomis, pavyzdžiui, didelės dpi įrenginiuose), naudodami tikslesnes vertes šiems palyginimams. .

Vėlgi, šios medijos užklausos taip pat pasiekiamos per 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;
  }
}

Taip pat yra medijos užklausų ir mišinių, skirtų taikyti vienam ekrano dydžių segmentui naudojant mažiausią ir didžiausią pertraukos taškų plotį.

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

Šios medijos užklausos taip pat pasiekiamos per 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) { ... }

Panašiai medijos užklausos gali apimti kelis pertraukos taškų plotius:

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

The Sass mixin for targeting the same screen size range would be:

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

Z-index

Several Bootstrap components utilize z-index, the CSS property that helps control layout by providing a third axis to arrange content. We utilize a default z-index scale in Bootstrap that’s been designed to properly layer navigation, tooltips and popovers, modals, and more.

These higher values start at an arbitrary number, high and specific enough to ideally avoid conflicts. We need a standard set of these across our layered components—tooltips, popovers, navbars, dropdowns, modals—so we can be reasonably consistent in the behaviors. There’s no reason we couldn’t have used 100+ or 500+.

We don’t encourage customization of these individual values; should you change one, you likely need to change them all.

$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;

Norėdami tvarkyti sutampančius komponentų kraštus (pvz., mygtukus ir įvesties įvesties grupėse), naudojame mažas vieno skaitmens z-indexvertes 1, 2, o 3numatytosioms, užvedimo ir aktyvioms būsenoms. Užvedus pelės žymeklį / fokusuojant / aktyvų, konkretų elementą iškeliame į priekį su didesne z-indexverte, kad būtų rodoma jo riba virš dviejų elementų.