Rács rendszer
Használja nagy teljesítményű mobil-első flexbox rácsunkat, hogy bármilyen alakú és méretű elrendezést készítsen a tizenkét oszloprendszernek, az öt alapértelmezett reagáló rétegnek, a Sass-változóknak és mixineknek, valamint a tucatnyi előre meghatározott osztálynak köszönhetően.
Hogyan működik
A Bootstrap rácsrendszere tárolók, sorok és oszlopok sorozatát használja a tartalom elrendezéséhez és igazításához. Flexbox -szal épült, és teljesen érzékeny. Az alábbiakban egy példa és egy alapos pillantás a rács összeállítására.
Új vagy még nem ismeri a flexboxot? Olvassa el ezt a CSS Tricks flexbox útmutatót a háttérrel, a terminológiával, az irányelvekkel és a kódrészletekkel kapcsolatban.
A fenti példa három egyenlő szélességű oszlopot hoz létre kis, közepes, nagy és extra nagy eszközökön az előre meghatározott rácsosztályaink segítségével. Ezek az oszlopok az oldal közepén vannak a szülővel .container
.
Lebontásban a következőképpen működik:
- A tárolók lehetővé teszik a webhely tartalmának középre helyezését és vízszintes párnázottságát. Használja
.container
reszponzív pixelszélességhez vagy.container-fluid
mindenwidth: 100%
nézetablakhoz és eszközmérethez. - A sorok az oszlopok burkolói. Minden oszlopnak van vízszintes
padding
(ún. ereszcsatorna) a köztük lévő tér szabályozására. Eztpadding
azután a negatív margós sorokon ellensúlyozza. Így az oszlopok összes tartalma vizuálisan a bal oldalon lesz igazítva. - Rácselrendezésben a tartalmat az oszlopokon belül kell elhelyezni, és csak az oszlopok lehetnek sorok közvetlen gyermekei.
- A flexboxnak köszönhetően a megadott nélküli rácsoszlopok
width
automatikusan egyenlő szélességű oszlopokként jelennek meg. Például négy példány.col-sm
automatikusan 25%-os széles lesz a kis törésponttól kezdve. További példákért tekintse meg az automatikus elrendezés oszlopait . - Az oszloposztályok azt jelzik, hogy a soronként lehetséges 12 oszlop közül hány oszlopot szeretne használni. Tehát, ha három egyenlő szélességű oszlopot szeretne keresztezni, használhatja a
.col-4
. - Az s oszlopok
width
százalékban vannak megadva, így mindig gördülékenyek és méretezhetők a szülőelemhez képest. - Az oszlopok vízszintesek
padding
az ereszcsatornák létrehozásához az egyes oszlopok között, azonban eltávolíthatja amargin
sorokból éspadding
az oszlopokból a.no-gutters
gombbal.row
. - Annak érdekében, hogy a rács érzékeny legyen, öt rács töréspontja van, mindegyik reszponzív törésponthoz egy : minden töréspont (extra kicsi), kicsi, közepes, nagy és extra nagy.
- A rács töréspontjai a minimális szélességű médialekérdezéseken alapulnak, vagyis arra az egy töréspontra és a felette lévőkre vonatkoznak (pl.
.col-sm-4
kicsi, közepes, nagy és extra nagy eszközökre vonatkoznak, de nem az elsőxs
töréspontra). - Használhat előre meghatározott rácsosztályokat (például
.col-4
) vagy Sass mixineket a szemantikai jelölések javításához.
Legyen tisztában a flexbox korlátaival és hibáival , például azzal, hogy bizonyos HTML-elemeket nem lehet rugalmas tárolóként használni .
Rács opciók
Míg a Bootstrap em
s vagy rem
s betűt használ a legtöbb méret meghatározásához, az px
s a rács töréspontjaihoz és a tárolószélességekhez. Ennek az az oka, hogy a nézetablak szélessége pixelben van megadva, és nem változik a betűmérettel .
Tekintse meg, hogyan működnek a Bootstrap rácsrendszer egyes elemei több eszközön egy praktikus táblázat segítségével.
Extra kicsi <576 képpont |
Kicsi ≥576 képpont |
Közepes ≥768 képpont |
Nagy ≥992 képpont |
Extra nagy ≥1200 képpont |
|
---|---|---|---|---|---|
Maximális konténer szélesség | Nincs (automatikus) | 540 képpont | 720 képpont | 960 képpont | 1140 képpont |
Osztály előtag | .col- |
.col-sm- |
.col-md- |
.col-lg- |
.col-xl- |
oszlopok száma | 12 | ||||
Az ereszcsatorna szélessége | 30 képpont (15 képpont az oszlop mindkét oldalán) | ||||
Fészkelhető | Igen | ||||
Oszlopsorrend | Igen |
Oszlopok automatikus elrendezése
Használjon töréspont-specifikus oszloposztályokat az egyszerű oszlopméretezéshez explicit számozott osztályok, például .col-sm-6
.
Egyenlő szélességű
Például itt van két rácselrendezés, amelyek minden eszközre és nézetablakra vonatkoznak, től xs
ig xl
. Adjon hozzá tetszőleges számú egység nélküli osztályt minden szükséges törésponthoz, és minden oszlop azonos szélességű lesz.
Az egyenlő szélességű oszlopok több sorra bonthatók, de volt egy Safari flexbox hiba , amely megakadályozta, hogy ez explicit flex-basis
vagy jelzés nélkül működjön border
. Vannak megoldások a régebbi böngészőverziókhoz, de ezekre nincs szükség, ha Ön naprakész.
Egy oszlopszélesség beállítása
A flexbox rácsoszlopok automatikus elrendezése azt is jelenti, hogy beállíthatja egy oszlop szélességét, és a testvéroszlopokat automatikusan átméretezheti körülötte. Használhat előre definiált rácsosztályokat (lásd lent), grid mixineket vagy inline szélességet. Vegye figyelembe, hogy a többi oszlop átméreteződik a középső oszlop szélességétől függetlenül.
Változó szélességű tartalom
Használjon col-{breakpoint}-auto
osztályokat az oszlopok méretére a tartalmuk természetes szélessége alapján.
Egyenlő szélességű többsoros
Hozzon létre egyforma szélességű oszlopokat, amelyek több sort ívelnek át úgy, hogy beszúrja azt a helyet, .w-100
ahol az oszlopokat új sorra szeretné törni. Tegye érzékenyebbé a szüneteket, ha összekeveri a -t .w-100
néhány reszponzív megjelenítési segédprogrammal .
Reszponzív osztályok
A Bootstrap rácsja öt előre definiált osztályt tartalmaz az összetett reszponzív elrendezések létrehozásához. Testreszabhatja az oszlopok méretét az extra kicsi, kicsi, közepes, nagy vagy extra nagy eszközökön, ahogy jónak látja.
Minden töréspont
A legkisebbtől a legnagyobbig azonos rácsokhoz használja a .col
és .col-*
osztályokat. Adjon meg egy számozott osztályt, ha különösen méretű oszlopra van szüksége; ellenkező esetben nyugodtan ragaszkodjon a -hoz .col
.
Vízszintesre rakva
Egyetlen .col-sm-*
osztálykészlet használatával létrehozhat egy alapvető rácsrendszert, amely halmozottan indul, és vízszintessé válik a kis töréspontnál ( sm
).
Keverd össze és párosítsd
Nem szeretné, hogy az oszlopok egyszerűen egymásra halmozódjanak néhány rácsszinten? Szükség szerint használjon különböző osztályok kombinációját minden réteghez. Tekintse meg az alábbi példát, hogy jobban megértse, hogyan működik mindez.
Igazítás
Használja a flexbox igazító segédprogramokat az oszlopok függőleges és vízszintes igazításához.
Függőleges igazítás
Vízszintes igazítás
Nincs ereszcsatorna
Az előre definiált rácsosztályainkban az oszlopok közötti ereszcsatornák a -val eltávolíthatók .no-gutters
. Ez eltávolítja a negatív margin
s-t az összes közvetlen alárendelt oszlopból .row
és a vízszintes elemet.padding
Itt található a stílusok létrehozásának forráskódja. Vegye figyelembe, hogy az oszlopfelülírások csak az első alárendelt oszlopokra vonatkoznak, és az attribútumválasztóval célozzák őket . Noha ez egy specifikusabb választót generál, az oszlopok kitöltése továbbra is tovább testreszabható a térköz segédprogramokkal .
Széltől szélig terjedő tervezésre van szüksége? Dobd el a szülőt .container
vagy .container-fluid
.
A gyakorlatban így néz ki. Vegye figyelembe, hogy ezt továbbra is használhatja az összes többi előre definiált rácsosztályhoz (beleértve az oszlopszélességeket, az adaptív rétegeket, az átrendezéseket és egyebeket).
Oszlop burkolása
Ha egy sorban több mint 12 oszlop van elhelyezve, a további oszlopok minden csoportja egy egységként új sorba kerül.
Mivel 9 + 4 = 13 > 12, ez a 4 oszlop széles div egy összefüggő egységként egy új sorba kerül.
A következő oszlopok az új sor mentén folytatódnak.
Oszloptörések
Az oszlopok új sorra töréséhez a flexboxban egy kis feltörésre van szükség: adjon hozzá egy elemet, width: 100%
ahol az oszlopokat egy új sorba szeretné tördelni. Általában ez több s-vel valósul meg .row
, de nem minden megvalósítási módszer képes ezt figyelembe venni.
Ezt a szünetet bizonyos töréspontokon is alkalmazhatja a reszponzív megjelenítési segédprogramjainkkal .
Újrarendelés
Rendelési osztályok
Használjon .order-
osztályokat a tartalom vizuális sorrendjének szabályozására . Ezek az osztályok reszponzívak, így beállíthatja a order
töréspontot (pl. .order-1.order-md-2
). Mind az öt rácsszinten támogatja az 1
áthaladást .12
Vannak olyan reszponzív .order-first
és .order-last
osztályok is, amelyek megváltoztatják order
egy elem értékét a order: -1
és order: 13
( order: $columns + 1
) alkalmazásával. Ezeket az osztályokat szükség szerint össze is lehet keverni a számozott .order-*
osztályokkal.
Oszlopok eltolása
A rácsoszlopokat kétféleképpen tolhatja el: a reszponzív .offset-
rácsosztályainkkal és a margin segédprogramjainkkal . A rácsosztályok mérete az oszlopokhoz igazodik, míg a margók hasznosabbak olyan gyors elrendezéseknél, ahol az eltolás szélessége változó.
Offset osztályok
Oszlopok mozgatása jobbra .offset-md-*
osztályok használatával. Ezek az osztályok oszlopokkal növelik az oszlop bal margóját *
. Például négy oszlop felett .offset-md-4
mozog ..col-md-4
A reszponzív töréspontoknál az oszloptörlés mellett előfordulhat, hogy vissza kell állítania az eltolásokat. Tekintse meg ezt működés közben a rácspéldában .
Margin segédprogramok
A flexboxra való átállással a 4-es verzióban margó-segédprogramokat használhat, például .mr-auto
a testvéroszlopok egymástól való távolítását.
Fészekrakás
Ha be szeretné ágyazni a tartalmat az alapértelmezett rácsba, adjon hozzá egy új .row
oszlopkészletet .col-sm-*
egy meglévő .col-sm-*
oszlophoz. A beágyazott soroknak olyan oszlopokat kell tartalmazniuk, amelyek összesen legfeljebb 12 oszlopot tartalmazhatnak (nem kötelező mind a 12 elérhető oszlopot használni).
Sass mixins
A Bootstrap Sass-forrásfájljainak használatakor lehetősége van Sass-változók és mixinek használatával egyéni, szemantikai és reszponzív oldalelrendezések létrehozására. Előre definiált rácsosztályaink ugyanezeket a változókat és mixineket használják, hogy a használatra kész osztályok teljes készletét biztosítsák a gyorsan reagáló elrendezésekhez.
Változók
A változók és a térképek határozzák meg az oszlopok számát, az ereszcsatorna szélességét és azt a médialekérdezési pontot, amelynél az oszlopok lebegése kezdődik. Ezeket használjuk a fent dokumentált előre definiált grid osztályok létrehozásához, valamint az alább felsorolt egyéni mixinekhez.
Mixins
A mixineket a rácsváltozókkal együtt használják szemantikus CSS létrehozására az egyes rácsoszlopokhoz.
Használati példa
Módosíthatja a változókat saját egyéni értékekre, vagy egyszerűen használhatja a mixineket az alapértelmezett értékekkel. Íme egy példa arra, hogyan használhatja az alapértelmezett beállításokat egy kétoszlopos elrendezés létrehozásához, amelyek között rés van.
A rács testreszabása
A beépített grid Sass változóink és térképeink segítségével lehetőség van az előre meghatározott grid osztályok teljes testreszabására. Módosítsa a szintek számát, a médialekérdezés méreteit és a tároló szélességét, majd fordítsa újra.
Oszlopok és ereszcsatornák
A rácsoszlopok száma Sass változókkal módosítható. $grid-columns
az egyes oszlopok szélességének (százalékban) generálására szolgál, miközben $grid-gutter-width
beállítja az oszlop ereszcsatornáinak szélességét.
Rács szintek
Magukon az oszlopokon túl testreszabhatja a rácsszintek számát is. Ha csak négy rácsszintet szeretne, frissítse a $grid-breakpoints
és $container-max-widths
a következőre:
Ha bármilyen módosítást végez a Sass-változókon vagy leképezéseken, mentenie kell a változtatásokat, és újra kell fordítania. Ezzel egy vadonatúj előre definiált rácsosztály-készletet fog kiadni az oszlopszélességekhez, az eltolásokhoz és a sorrendhez. A reszponzív láthatósági segédprogramok is frissülnek az egyéni töréspontok használatához. Ügyeljen arra, hogy a rácsértékeket beállítsa px
(ne rem
, em
, vagy %
).