Kleur
Bootstrap word ondersteun deur 'n uitgebreide kleurstelsel wat ons style en komponente temas. Dit maak meer omvattende aanpassing en uitbreiding vir enige projek moontlik.
Tema kleure
Ons gebruik 'n subset van alle kleure om 'n kleiner kleurpalet te skep vir die generering van kleurskemas, ook beskikbaar as Sass-veranderlikes en 'n Sass-kaart in Bootstrap se scss/_variables.scss
lêer.
Al hierdie kleure is beskikbaar as 'n Sass-kaart, $theme-colors
.
$theme-colors: (
"primary": $primary,
"secondary": $secondary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark
);
Kyk na ons Sass-kaarte en loops-dokumente vir hoe om hierdie kleure te verander.
Alle kleure
Alle Bootstrap-kleure is beskikbaar as Sass-veranderlikes en 'n Sass-kaart in scss/_variables.scss
lêer. Om groter lêergroottes te vermy, skep ons nie teks- of agtergrondkleurklasse vir elk van hierdie veranderlikes nie. In plaas daarvan kies ons 'n subset van hierdie kleure vir 'n temapalet .
Maak seker dat u kontrasverhoudings monitor terwyl u kleure aanpas. Soos hieronder getoon, het ons drie kontrasverhoudings by elk van die hoofkleure gevoeg—een vir die monster se huidige kleure, een vir teen wit en een vir teen swart.
Notas oor Sass
Sass kan nie veranderlikes programmaties genereer nie, so ons het self veranderlikes vir elke tint en skakering met die hand geskep. Ons spesifiseer die middelpuntwaarde (bv. $blue-500
) en gebruik pasgemaakte kleurfunksies om ons kleure met Sass se kleurfunksie te tint (verlig) of skakering (verdonker) mix()
.
Die gebruik mix()
is nie dieselfde as lighten()
en darken()
– eersgenoemde meng die gespesifiseerde kleur met wit of swart, terwyl laasgenoemde net die ligheidswaarde van elke kleur aanpas. Die resultaat is 'n baie meer volledige reeks kleure, soos getoon in hierdie CodePen-demo .
Ons tint-color()
en shade-color()
funksies gebruik mix()
saam met ons $theme-color-interval
veranderlike, wat 'n getrapte persentasiewaarde spesifiseer vir elke gemengde kleur wat ons produseer. Sien die scss/_functions.scss
en scss/_variables.scss
lêers vir die volledige bronkode.
Kleur Sass-kaarte in
Bootstrap se bron-Sass-lêers bevat drie kaarte om jou te help om vinnig en maklik oor 'n lys kleure en hul hekswaardes te loop.
$colors
lys al ons beskikbare basis (500
) kleure$theme-colors
lys alle semanties benoemde temakleure (hieronder getoon)$grays
lys alle kleure en skakerings van grys
Binne scss/_variables.scss
sal jy Bootstrap se kleurveranderlikes en Sass-kaart vind. Hier is 'n voorbeeld van die $colors
Sass-kaart:
$colors: (
"blue": $blue,
"indigo": $indigo,
"purple": $purple,
"pink": $pink,
"red": $red,
"orange": $orange,
"yellow": $yellow,
"green": $green,
"teal": $teal,
"cyan": $cyan,
"black": $black,
"white": $white,
"gray": $gray-600,
"gray-dark": $gray-800
);
Voeg waardes by, verwyder of wysig waardes binne die kaart om op te dateer hoe dit in baie ander komponente gebruik word. Ongelukkig gebruik nie elke komponent tans hierdie Sass-kaart nie. Toekomstige opdaterings sal daarna streef om hierop te verbeter. Beplan tot dan om van die ${color}
veranderlikes en hierdie Sass-kaart gebruik te maak.
Voorbeeld
Hier is hoe jy dit in jou Sass kan gebruik:
.alpha { color: $purple; }
.beta {
color: $yellow-300;
background-color: $indigo-900;
}
Kleur- en agtergrondnutsklasse is ook beskikbaar vir die instelling color
en background-color
gebruik van die 500
kleurwaardes.
Genereer nutsdienste
Bygevoeg in v5.1.0Bootstrap bevat nie color
nutsprogramme background-color
vir elke kleurveranderlike nie, maar jy kan dit self genereer met ons nuts-API en ons uitgebreide Sass-kaarte wat in v5.1.0 bygevoeg is.
- Om te begin, maak seker dat jy ons funksies, veranderlikes, mixins en nutsprogramme ingevoer het.
- Gebruik ons
map-merge-multiple()
funksie om vinnig verskeie Sass-kaarte saam te voeg in 'n nuwe kaart. - Voeg hierdie nuwe gekombineerde kaart saam om enige hulpprogram met 'n
{color}-{level}
klasnaam uit te brei.
Hier is 'n voorbeeld wat tekskleurhulpmiddels genereer (bv. .text-purple-500
) deur die bogenoemde stappe te gebruik.
@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/maps";
@import "bootstrap/scss/mixins";
@import "bootstrap/scss/utilities";
$all-colors: map-merge-multiple($blues, $indigos, $purples, $pinks, $reds, $oranges, $yellows, $greens, $teals, $cyans);
$utilities: map-merge(
$utilities,
(
"color": map-merge(
map-get($utilities, "color"),
(
values: map-merge(
map-get(map-get($utilities, "color"), "values"),
(
$all-colors
),
),
),
),
)
);
@import "bootstrap/scss/utilities/api";
.text-{color}-{level}
Dit sal nuwe nutsprogramme vir elke kleur en vlak genereer . Jy kan dieselfde doen vir enige ander nut en eiendom ook.