Spațiere
Bootstrap include o gamă largă de clase de utilitate pentru marjă de răspuns scurtă, umplutură și decalaj pentru a modifica aspectul unui element.
Marja și umplutură
Atribuiți valori responsive-friendly margin
sau padding
unui 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 .25rem
până la 3rem
.
Notaţie
Utilitarele de spațiere care se aplică tuturor punctelor de întrerupere, de la xs
până la xxl
, nu au abrevierea punctului de întrerupere. 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 stabilescmargin
p
- pentru clasele care se stabilescpadding
Unde laturile este una dintre:
t
- pentru clasele care stabilescmargin-top
saupadding-top
b
- pentru clasele care stabilescmargin-bottom
saupadding-bottom
s
- (start) pentru clasele care se seteazămargin-left
saupadding-left
în LTR,margin-right
saupadding-right
în RTLe
- (sfârșit) pentru clasele care seteazămargin-right
saupadding-right
în LTR,margin-left
saupadding-left
în RTLx
- pentru clasele care stabilesc atât*-left
și*-right
y
- pentru clasele care stabilesc atât*-top
și*-bottom
- gol - pentru clasele care stabilesc a
margin
saupadding
pe toate cele 4 laturi ale elementului
Unde dimensiunea este una dintre:
0
- pentru clasele care eliminămargin
saupadding
prin setarea la0
1
- (în mod implicit) pentru clasele care seteazămargin
saupadding
la$spacer * .25
2
- (în mod implicit) pentru clasele care seteazămargin
saupadding
la$spacer * .5
3
- (în mod implicit) pentru clasele care seteazămargin
saupadding
la$spacer
4
- (în mod implicit) pentru clasele care seteazămargin
saupadding
la$spacer * 1.5
5
- (în mod implicit) pentru clasele care seteazămargin
saupadding
la$spacer * 3
auto
- pentru clasele care seteazămargin
automat
(Puteți adăuga mai multe dimensiuni adăugând intrări la $spacers
variabila 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-auto
clasă pentru centrarea orizontală a conținutului la nivel de bloc cu lățime fixă - adică conținut care are display: block
și un width
set - prin setarea marginilor orizontale la auto
.
<div class="mx-auto" style="width: 200px;">
Centered element
</div>
Marja negativă
În CSS, margin
proprietățile pot utiliza valori negative ( padding
nu 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 gap
utilităț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: grid
container). Utilitarele Gap sunt receptive în mod implicit și sunt generate prin intermediul API-ului nostru de utilitare, pe baza $spacers
hă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 $spacers
hartă ( 0
– 5
). Nu există nicio .gap-auto
clasă 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,
);
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
),
// Gap utility
"gap": (
responsive: true,
property: gap,
class: gap,
values: $spacers
),