Spațiere
Bootstrap include o gamă largă de clase de utilitate pentru marjă, umplutură și decalaj receptiv pentru a modifica aspectul unui element.
Marja și umplutură
Atribuiți valori responsive-friendly marginsau paddingunui element sau unui subset al laturilor sale cu clase scurte. Include suport pentru proprietăți individuale, toate proprietățile și proprietățile verticale și orizontale. Clasele sunt construite dintr-o hartă Sass implicită, de la .25rempână la 3rem.
Folosești modulul de aspect CSS Grid? Luați în considerare utilizarea utilitarului gap .
Notaţie
Utilitarele de spațiere care se aplică tuturor punctelor de întrerupere, de la xspână la xxl, nu au abrevierea punctului de întrerupere în ele. Acest lucru se datorează faptului că acele clase sunt aplicate de la min-width: 0și în sus și, prin urmare, nu sunt legate de o interogare media. Punctele de întrerupere rămase, totuși, includ o abreviere a punctului de întrerupere.
Clasele sunt denumite folosind formatul {property}{sides}-{size}pentru xsși {property}{sides}-{breakpoint}-{size}pentru sm, md, lg, xlși xxl.
Acolo unde proprietatea este una dintre:
m- pentru clasele care se stabilescmarginp- pentru clasele care se stabilescpadding
Unde laturi este una dintre:
t- pentru clasele care stabilescmargin-topsaupadding-topb- pentru clasele care stabilescmargin-bottomsaupadding-bottoms- (start) pentru clasele care se seteazămargin-leftsaupadding-leftîn LTR,margin-rightsaupadding-rightîn RTLe- (sfârșit) pentru clasele care seteazămargin-rightsaupadding-rightîn LTR,margin-leftsaupadding-leftîn RTLx- pentru clasele care stabilesc atât*-leftși*-righty- pentru clasele care stabilesc atât*-topși*-bottom- gol - pentru clasele care stabilesc a
marginsaupaddingpe toate cele 4 laturi ale elementului
Unde dimensiunea este una dintre:
0- pentru clasele care eliminămarginsaupaddingprin setarea la01- (în mod implicit) pentru clasele care seteazămarginsaupaddingla$spacer * .252- (în mod implicit) pentru clasele care seteazămarginsaupaddingla$spacer * .53- (în mod implicit) pentru clasele care seteazămarginsaupaddingla$spacer4- (în mod implicit) pentru clasele care seteazămarginsaupaddingla$spacer * 1.55- (în mod implicit) pentru clasele care seteazămarginsaupaddingla$spacer * 3auto- pentru clasele care seteazămarginla auto
(Puteți adăuga mai multe dimensiuni adăugând intrări la $spacersvariabila hartă Sass.)
Exemple
Iată câteva exemple reprezentative ale acestor clase:
.mt-0 {
margin-top: 0 !important;
}
.ms-1 {
margin-left: ($spacer * .25) !important;
}
.px-2 {
padding-left: ($spacer * .5) !important;
padding-right: ($spacer * .5) !important;
}
.p-3 {
padding: $spacer !important;
}
Centrare orizontală
În plus, Bootstrap include și o .mx-autoclasă pentru centrarea orizontală a conținutului la nivel de bloc cu lățime fixă - adică conținut care are display: blockși un widthset - prin setarea marginilor orizontale la auto.
<div class="mx-auto" style="width: 200px;">
Centered element
</div>
Marja negativă
În CSS, marginproprietățile pot utiliza valori negative ( paddingnu pot). Aceste marje negative sunt dezactivate implicit , dar pot fi activate în Sass prin setare $enable-negative-margins: true.
Sintaxa este aproape aceeași cu utilitățile implicite, cu marjă pozitivă, dar cu adăugarea de nînainte de dimensiunea cerută. Iată un exemplu de clasă care este opusul .mt-1:
.mt-n1 {
margin-top: -0.25rem !important;
}
Decalaj
Când utilizați display: grid, puteți utiliza gaputilitățile din containerul rețelei părinte. Acest lucru poate economisi nevoia de a adăuga utilități de marjă la elementele individuale ale rețelei (copiii unui display: gridcontainer). Utilitarele Gap sunt receptive în mod implicit și sunt generate prin intermediul API-ului nostru de utilitare, pe baza $spacershărții Sass.
<div class="d-grid gap-3">
<div class="p-2 bg-light border">Grid item 1</div>
<div class="p-2 bg-light border">Grid item 2</div>
<div class="p-2 bg-light border">Grid item 3</div>
</div>
Asistența include opțiuni de răspuns pentru toate punctele de întrerupere ale grilei Bootstrap, precum și șase dimensiuni de pe $spacershartă ( 0– 5). Nu există nicio .gap-autoclasă de utilitate, deoarece este efectiv aceeași cu .gap-0.
Sass
Hărți
Utilitățile de spațiere sunt declarate prin intermediul hărții Sass și apoi generate cu API-ul nostru de utilitare.
$spacer: 1rem;
$spacers: (
0: 0,
1: $spacer * .25,
2: $spacer * .5,
3: $spacer,
4: $spacer * 1.5,
5: $spacer * 3,
);
$negative-spacers: if($enable-negative-margins, negativify-map($spacers), null);
Utilities API
Utilitarele de spațiere sunt declarate în API-ul nostru de utilitare în scss/_utilities.scss. Aflați cum să utilizați API-ul utilitare.
"margin": (
responsive: true,
property: margin,
class: m,
values: map-merge($spacers, (auto: auto))
),
"margin-x": (
responsive: true,
property: margin-right margin-left,
class: mx,
values: map-merge($spacers, (auto: auto))
),
"margin-y": (
responsive: true,
property: margin-top margin-bottom,
class: my,
values: map-merge($spacers, (auto: auto))
),
"margin-top": (
responsive: true,
property: margin-top,
class: mt,
values: map-merge($spacers, (auto: auto))
),
"margin-end": (
responsive: true,
property: margin-right,
class: me,
values: map-merge($spacers, (auto: auto))
),
"margin-bottom": (
responsive: true,
property: margin-bottom,
class: mb,
values: map-merge($spacers, (auto: auto))
),
"margin-start": (
responsive: true,
property: margin-left,
class: ms,
values: map-merge($spacers, (auto: auto))
),
// Negative margin utilities
"negative-margin": (
responsive: true,
property: margin,
class: m,
values: $negative-spacers
),
"negative-margin-x": (
responsive: true,
property: margin-right margin-left,
class: mx,
values: $negative-spacers
),
"negative-margin-y": (
responsive: true,
property: margin-top margin-bottom,
class: my,
values: $negative-spacers
),
"negative-margin-top": (
responsive: true,
property: margin-top,
class: mt,
values: $negative-spacers
),
"negative-margin-end": (
responsive: true,
property: margin-right,
class: me,
values: $negative-spacers
),
"negative-margin-bottom": (
responsive: true,
property: margin-bottom,
class: mb,
values: $negative-spacers
),
"negative-margin-start": (
responsive: true,
property: margin-left,
class: ms,
values: $negative-spacers
),
// Padding utilities
"padding": (
responsive: true,
property: padding,
class: p,
values: $spacers
),
"padding-x": (
responsive: true,
property: padding-right padding-left,
class: px,
values: $spacers
),
"padding-y": (
responsive: true,
property: padding-top padding-bottom,
class: py,
values: $spacers
),
"padding-top": (
responsive: true,
property: padding-top,
class: pt,
values: $spacers
),
"padding-end": (
responsive: true,
property: padding-right,
class: pe,
values: $spacers
),
"padding-bottom": (
responsive: true,
property: padding-bottom,
class: pb,
values: $spacers
),
"padding-start": (
responsive: true,
property: padding-left,
class: ps,
values: $spacers
),