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

@include media-breakpoint-up(xs) { ... }
@include media-breakpoint-up(sm) { ... }
@include media-breakpoint-up(md) { ... }
@include media-breakpoint-up(lg) { ... }
@include media-breakpoint-up(xl) { ... }

// Example usage:
@include media-breakpoint-up(sm) {
  .some-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) { ... }

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

„Sass“ derinys, skirtas taikyti tam pačiam ekrano dydžio diapazonui, būtų:

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

Z indeksas

Keli „Bootstrap“ komponentai naudoja z-indexCSS ypatybę, kuri padeda valdyti išdėstymą, suteikiant trečiąją ašį turiniui tvarkyti. „Bootstrap“ naudojame numatytąją „z-index“ skalę, kuri buvo sukurta taip, kad būtų tinkamai išdėstyta naršymo, patarimų ir iššokančių langų, modalų ir kt.

Šios didesnės reikšmės prasideda nuo savavališko skaičiaus, didelio ir pakankamai specifinio, kad būtų išvengta konfliktų. Mums reikia standartinio jų rinkinio mūsų sluoksniuotuose komponentuose – įrankių patarimuose, iššokančiuose langeliuose, naršymo juostose, išskleidžiamuosiuose sąrašuose, modaluose – kad galėtume elgtis pakankamai nuosekliai. Nėra jokios priežasties, kodėl negalėjome naudoti 100+ arba 500+.

Mes neskatiname pritaikyti šių individualių vertybių; Jei pakeisite vieną, greičiausiai turėsite pakeisti juos visus.

$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ų.