CSS Grid
Disce quomodo efficere, utere, et domicilii nostri ratio alternativa in CSS Grid constructa cum exemplis et fragmentis codicis.
Bootstrap default craticulae systematis fastigium significat supra decennium artium technicarum CSS layoutorum, probatarum et probatarum per decies centena millia hominum. Sed, etiam sine multis notis CSS modernis et artificiis quae in navigatoribus visi sumus sicut nova CSS Grid creata est.
Quomodo facitur
Cum Bootstrap 5, optionem addimus ut ratio eget separati quae in CSS Grid aedificata est, sed cum Bootstrap torquent. Adhuc classes ad libitum adhibere potes ut propositas responsivas construas, sed alio modo sub cucullo.
-
CSS Grid est opt-in. Disable the default grid system by setting
$enable-grid-classes: false
and enable the CSS Grid by setting$enable-cssgrid: true
. Tum recipe Sass. -
Repone exempla
.row
cum.grid
..grid
Classis ponit etdisplay: grid
efficitgrid-template
ut superaedificas cum HTML tuo. -
Classes
.col-*
cum.g-col-*
classes reponere. Id est , quod nostra CSS columnae Grid ingrid-column
loco proprietatis utunturwidth
. -
Columnae et triviarum magnitudinum per CSS variabiles sunt. Haec pone in parente
.grid
et mos, utcunque vis, inline vel in stylesheet, cum--bs-columns
et--bs-gap
.
In futuro, Bootstrap verisimile erit solutionem hybridarum mutare sicut gap
proprietas fere plenam navigatri subsidium pro flexbox confecit.
Key differences
Ad default eget ratio:
-
Utilitas flexa non eodem modo afficit columnas CSS Grid.
-
Hiatus supplet earum. Proprietas
gap
locum tenet horizontalempadding
a systemate electronico nostro defectu et functionibus similioramargin
. -
Quales, dissimiles
.row
s,.grid
s margines negativas et utilitates marginales nullas habent, adhiberi possunt ad canales craticulas mutandas. Grid hiatus per defaltam et perpendiculariter applicantur. Vide sectionem customising pro magis details. -
Inlinei et consuetudinum genera censendi sunt supplementa ad classes determinatas (exempli,
style="--bs-columns: 3;"
vs.class="row-cols-3"
). -
Opera nidificans similiter, sed requirat te ut columnam tuam in singulis instantia nidificantis indicet
.grid
. Vide sectionem aerarii ad singularia.
Exempla
Tres columnas
.g-col-4
Tres columnae aequales latae per omnes prospectus et machinas per classes creari possunt . Classes responsivas addere ad extensionem a magnitudine prospectu mutandam.
<div class="grid text-center">
<div class="g-col-4">.g-col-4</div>
<div class="g-col-4">.g-col-4</div>
<div class="g-col-4">.g-col-4</div>
</div>
Responsivum
Classes responsivas utere, ut extensionem tuam per viewports componas. Hic incipimus duabus columnis in prospectu angustissimo, ac deinde ad tres columnas in medio prospectu supraque crescunt.
<div class="grid text-center">
<div class="g-col-6 g-col-md-4">.g-col-6 .g-col-md-4</div>
<div class="g-col-6 g-col-md-4">.g-col-6 .g-col-md-4</div>
<div class="g-col-6 g-col-md-4">.g-col-6 .g-col-md-4</div>
</div>
Confer huic duae columnae ad omnia prospectus.
<div class="grid text-center">
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
</div>
involuti
Grid items automatice ad proximam lineam involvo cum non amplius locus horizontaliter est. Nota quod gap
applicatio ad hiatus horizontalem et verticalem inter eget items.
<div class="grid text-center">
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
</div>
Incipit
Classes incipiunt intendunt reponere in classes offsets egetis default nostri, sed non omnino eadem sunt. CSS Grid eget template per styles qui nuntiant navigatores ad "incipere columnam hanc" et "finire in hac columna". Proprietates istae sunt grid-column-start
et grid-column-end
. Satus classes sunt notas priores. Iunge cum columna classes ad magnitudinem et columnas tuas align attamen tibi opus est. Classes incipiunt incipiunt 1
sicut 0
invalidum valorem pro his proprietatibus.
<div class="grid text-center">
<div class="g-col-3 g-start-2">.g-col-3 .g-start-2</div>
<div class="g-col-4 g-start-6">.g-col-4 .g-start-6</div>
</div>
Auto columnas
Cum nullae sunt classes in euismod items (proximi filii alicuius .grid
), singulae emissiones sponte ad unam columnam erunt.
<div class="grid text-center">
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
</div>
Huiusmodi mores cum classibus columnae eget misceri possunt.
<div class="grid text-center">
<div class="g-col-6">.g-col-6</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
<div>1</div>
</div>
Nidificans
Similia rationi electronici nostri default nostri CSS Grid pro facili nidificatione .grid
s permittit. Nihilominus, dissimilis defectus, haec euismod in ordines, columnas, et hiatus mutationes hereditat. Exemplum infra vide:
- Annum numerum columnarum cum locali CSS variabili vincimus:
--bs-columns: 3
. - In prima columna auto- columnae numeratio hereditaria est et unaquaeque columna est tertia latitudinis praesto.
- In secunda columna auto-, columnam numeramus in nested
.grid
ad 12 (defaltam nostram). - Tertia auto- columna contentum non habet.
Hoc in usu concedit pro pluribus propositis multiplicioribus et consuetudinibus comparatis cum systemate nostro defalta euismod.
<div class="grid text-center" style="--bs-columns: 3;">
<div>
First auto-column
<div class="grid">
<div>Auto-column</div>
<div>Auto-column</div>
</div>
</div>
<div>
Second auto-column
<div class="grid" style="--bs-columns: 12;">
<div class="g-col-6">6 of 12</div>
<div class="g-col-4">4 of 12</div>
<div class="g-col-2">2 of 12</div>
</div>
</div>
<div>Third auto-column</div>
</div>
Customising
Numerum columnarum, versuum numerum, et latitudinem hiatus cum variantibus localibus CSS.
Variabilis | Fallback valorem | Descriptio |
---|---|---|
--bs-rows |
1 |
Numerus ordinum in eget template |
--bs-columns |
12 |
Numerus columnarum in eget template |
--bs-gap |
1.5rem |
Magnitudo distantia inter columnas (verticalis et horizontalis) |
Hae variabiles CSS valorem nullum default habent; sed valores fallaces adhibent, qui adhibentur donec instantia localis provideatur. var(--bs-rows, 1)
Exempli gratia, ordinibus CSS Grid nostris utimur , qui ignorat --bs-rows
quod nondum alicubi positum est. Postquam est, .grid
instantia illo loco utetur valoris fallaciae ipsius 1
.
Nullam eget cursus
Immediata infantes elementa .grid
euismod rerum sunt, ergo scihcet erunt sine .g-col
classe expresse addito.
<div class="grid text-center" style="--bs-columns: 3;">
<div>Auto-column</div>
<div>Auto-column</div>
<div>Auto-column</div>
</div>
Columnae et hiatus
Compone numerum columnarum et hiatum.
<div class="grid text-center" style="--bs-columns: 4; --bs-gap: 5rem;">
<div class="g-col-2">.g-col-2</div>
<div class="g-col-2">.g-col-2</div>
</div>
<div class="grid text-center" style="--bs-columns: 10; --bs-gap: 1rem;">
<div class="g-col-6">.g-col-6</div>
<div class="g-col-4">.g-col-4</div>
</div>
addit ordines
Additis pluribus versibus et permutatione columnarum collocatione;
<div class="grid text-center" style="--bs-rows: 3; --bs-columns: 3;">
<div>Auto-column</div>
<div class="g-start-2" style="grid-row: 2">Auto-column</div>
<div class="g-start-3" style="grid-row: 3">Auto-column</div>
</div>
Lacunae
Mutata hiatus verticalis solum modificatione row-gap
. gap
Nota quod in s utimur .grid
, sed immutabile est row-gap
ac column-gap
ut opus est.
<div class="grid text-center" style="row-gap: 0;">
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
</div>
Propter hoc, potes habere diversas gap
s verticales et horizontales, quae unum valorem (ubique) vel par valorum (verticali et horizontali) capere possunt. Hoc applicari potest cum stylo inline pro gap
, vel cum --bs-gap
CSS variabili nostro.
<div class="grid text-center" style="--bs-gap: .25rem 1rem;">
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
<div class="g-col-6">.g-col-6</div>
</div>
Sass
Una limitatio CSS Grid est quod defectus noster classes adhuc ex duabus Sass variabilibus generatur $grid-columns
et $grid-gutter-width
. Hoc efficaciter determinat numerum generum generatorum in nostris compilatis CSS. Duas optiones hic habes:
- Commutare illas variabiles defaltam Sass et CSS rescribere tuum.
- Utere inline vel consuetudine styli ad augendas classes provisum.
Exempli gratia, columnam augere potes numerare et magnitudinem hiatus mutare, et tunc magnitudinem tuam "columnas" cum mixto stylorum inlinerum et praefinitis classibus columnae CSS Grid (eg, .g-col-4
).
<div class="grid text-center" style="--bs-columns: 18; --bs-gap: .5rem;">
<div style="grid-column: span 14;">14 columns</div>
<div class="g-col-4">.g-col-4</div>
</div>