Áttekintés
Komponensek és lehetőségek a Bootstrap projekt elrendezéséhez, beleértve a csomagoló tárolókat, a hatékony rácsrendszert, a rugalmas médiaobjektumot és az érzékeny segédprogram-osztályokat.
Konténerek
A tárolók a Bootstrap legalapvetőbb elrendezési elemei, és az alapértelmezett rácsrendszerünk használatakor szükségesek . A tárolók a tartalom tárolására, párosítására és (néha) központosítására szolgálnak. Míg a tárolók beágyazhatók , a legtöbb elrendezéshez nincs szükség beágyazott tárolóra.
A Bootstrap három különböző konténerrel érkezik:
.container
max-width
, amely minden reszponzív töréspontnál beállít egy értéket.container-fluid
, amiwidth: 100%
minden törésponton van.container-{breakpoint}
, amiwidth: 100%
a megadott töréspontig tart
Az alábbi táblázat bemutatja, hogy az egyes tárolók hogyan viszonyulnak max-width
az eredetihez .container
, és hogyan viszonyulnak .container-fluid
az egyes töréspontokhoz.
Tekintse meg őket működés közben, és hasonlítsa össze őket a rácsos példánkban .
Extra kicsi <576 képpont |
Kicsi ≥576 képpont |
Közepes ≥768 képpont |
Nagy ≥ 992 képpont |
Extra nagy ≥1200 képpont |
|
---|---|---|---|---|---|
.container |
100% | 540 képpont | 720 képpont | 960 képpont | 1140 képpont |
.container-sm |
100% | 540 képpont | 720 képpont | 960 képpont | 1140 képpont |
.container-md |
100% | 100% | 720 képpont | 960 képpont | 1140 képpont |
.container-lg |
100% | 100% | 100% | 960 képpont | 1140 képpont |
.container-xl |
100% | 100% | 100% | 100% | 1140 képpont |
.container-fluid |
100% | 100% | 100% | 100% | 100% |
Minden egyben
Az alapértelmezett .container
osztályunk egy reszponzív, fix szélességű tároló, ami azt jelenti, hogy max-width
minden törésponton változik.
<div class="container">
<!-- Content here -->
</div>
Folyadék
Használja .container-fluid
teljes szélességű tárolóhoz, amely a nézetablak teljes szélességére kiterjed.
<div class="container-fluid">
...
</div>
Fogékony
A reszponzív tárolók újak a Bootstrap v4.4-ben. Lehetővé teszik egy 100%-ban széles osztály megadását a megadott töréspont eléréséig, ezután max-width
minden magasabb töréspontra s-t alkalmazunk. Például .container-sm
100%-os széles a kezdéshez, amíg el sm
nem éri a töréspontot, ahol a md
, lg
, és billentyűkkel felfelé lép xl
.
<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>
Reszponzív töréspontok
Mivel a Bootstrap-et először mobilra fejlesztették ki, néhány médialekérdezést használunk , hogy ésszerű töréspontokat hozzunk létre elrendezéseinkhez és felületeinkhez. Ezek a töréspontok többnyire a minimális nézetablakszélességeken alapulnak, és lehetővé teszik az elemek méretezését a nézetablak változásával.
A Bootstrap elsősorban a következő médialekérdezési tartományokat – vagy töréspontokat – használja a forrás Sass-fájljainkban az elrendezéshez, a rácsrendszerhez és az összetevőkhöz.
// 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) { ... }
Mivel a forrás-CSS-ünket Sass-ban írjuk, minden médialekérdezésünk elérhető a Sass mixineken keresztül:
// 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;
}
}
Alkalmanként használunk olyan médialekérdezéseket, amelyek a másik irányba mutatnak (az adott képernyőméret vagy kisebb ):
// 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-
ésmax-
nézetablak korlátait (amelyek bizonyos körülmények között előfordulhatnak például nagy dpi-s eszközökön) úgy, hogy nagyobb pontosságú értékeket használunk ezekhez az összehasonlításokhoz. .
Ezek a médialekérdezések ismét elérhetőek a Sass mixineken keresztül:
@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;
}
}
Léteznek médialekérdezések és keverők is a képernyőméretek egyetlen szegmensének megcélzásához a minimális és maximális töréspont-szélesség használatával.
// 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) { ... }
Ezek a médialekérdezések a Sass mixineken keresztül is elérhetők:
@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) { ... }
Hasonlóképpen, a médialekérdezések több töréspont-szélességre is kiterjedhetnek:
// Example
// Apply styles starting from medium devices and up to extra large devices
@media (min-width: 768px) and (max-width: 1199.98px) { ... }
A Sass mixin ugyanazon képernyőméret-tartomány célzásához a következő lenne:
@include media-breakpoint-between(md, xl) { ... }
Z-index
Számos Bootstrap komponens használja z-index
a CSS tulajdonságot, amely segít az elrendezés szabályozásában, mivel egy harmadik tengelyt biztosít a tartalom elrendezéséhez. A Bootstrap alapértelmezett z-index skáláját használjuk, amelyet úgy terveztek, hogy megfelelően rétegezze a navigációt, az eszköztippeket és az előugró ablakokat, a modálisokat és egyebeket.
Ezek a magasabb értékek tetszőleges számmal kezdődnek, magasak és elég specifikusak ahhoz, hogy ideális esetben elkerüljék a konfliktusokat. Ezek szabványos készletére van szükségünk a réteges összetevőinkben – eszköztippek, felugró ablakok, navigációs sávok, legördülő menük, módozatok –, hogy ésszerűen következetesek legyünk a viselkedésben. Semmi oka annak, hogy ne használhattuk volna a 100
+ vagy a 500
+ jelet.
Nem ösztönözzük ezen egyéni értékek testreszabását; Ha valamelyiket megváltoztatja, valószínűleg mindegyiket meg kell változtatnia.
$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;
Az összetevőkön belüli átfedő szegélyek (pl. gombok és bemenetek bemeneti csoportokban) kezeléséhez alacsony egyjegyű z-index
, 1
, 2
és 3
alapértelmezett, lebegő és aktív állapotokat használunk. A hover/focus/active funkciónál egy adott elemet előtérbe helyezünk magasabb z-index
értékkel, hogy megmutassuk a határát a testvérelemek felett.