Baggrund
Formidle mening igennem background-color
og tilføj dekoration med gradienter.
Baggrundsfarve
På samme måde som de kontekstuelle tekstfarveklasser skal du indstille baggrunden for et element til en hvilken som helst kontekstuel klasse. Baggrundsværktøjer indstilles ikkecolor
, så i nogle tilfælde vil du bruge .text-*
farveværktøjer .
<div class="p-3 mb-2 bg-primary text-white">.bg-primary</div>
<div class="p-3 mb-2 bg-secondary text-white">.bg-secondary</div>
<div class="p-3 mb-2 bg-success text-white">.bg-success</div>
<div class="p-3 mb-2 bg-danger text-white">.bg-danger</div>
<div class="p-3 mb-2 bg-warning text-dark">.bg-warning</div>
<div class="p-3 mb-2 bg-info text-dark">.bg-info</div>
<div class="p-3 mb-2 bg-light text-dark">.bg-light</div>
<div class="p-3 mb-2 bg-dark text-white">.bg-dark</div>
<div class="p-3 mb-2 bg-body text-dark">.bg-body</div>
<div class="p-3 mb-2 bg-white text-dark">.bg-white</div>
<div class="p-3 mb-2 bg-transparent text-dark">.bg-transparent</div>
Baggrundsgradient
Ved at tilføje en .bg-gradient
klasse tilføjes en lineær gradient som baggrundsbillede til baggrundene. Denne gradient starter med en semi-transparent hvid, som falmer ud til bunden.
Har du brug for en gradient i din tilpassede CSS? Bare tilføj background-image: var(--bs-gradient);
.
Gennemsigtighed
Tilføjet i v5.1.0
Fra v5.1.0 background-color
genereres hjælpeprogrammer med Sass ved hjælp af CSS-variabler. Dette giver mulighed for farveændringer i realtid uden kompilering og dynamiske ændringer i alfa-gennemsigtighed.
Hvordan det virker
Overvej vores standardværktøj .bg-success
.
.bg-success {
--bs-bg-opacity: 1;
background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}
Vi bruger en RGB-version af vores --bs-success
(med værdien af 25, 135, 84
) CSS-variabel og vedhæftede en anden CSS-variabel, --bs-bg-opacity
, for alfa-gennemsigtigheden (med en standardværdi 1
takket være en lokal CSS-variabel). Det betyder, at når som helst du bruger .bg-success
nu, er din beregnede color
værdi rgba(25, 135, 84, 1)
. Den lokale CSS-variabel inde i hver .bg-*
klasse undgår arveproblemer, så indlejrede forekomster af hjælpeprogrammerne ikke automatisk har en ændret alfa-gennemsigtighed.
Eksempel
For at ændre denne opacitet skal du tilsidesætte --bs-bg-opacity
via brugerdefinerede typografier eller indlejrede typografier.
<div class="bg-success p-2 text-white">This is default success background</div>
<div class="bg-success p-2" style="--bs-bg-opacity: .5;">This is 50% opacity success background</div>
Eller vælg mellem et af .bg-opacity
hjælpeprogrammerne:
<div class="bg-success p-2 text-white">This is default success background</div>
<div class="bg-success p-2 text-white bg-opacity-75">This is 75% opacity success background</div>
<div class="bg-success p-2 text-dark bg-opacity-50">This is 50% opacity success background</div>
<div class="bg-success p-2 text-dark bg-opacity-25">This is 25% opacity success background</div>
<div class="bg-success p-2 text-dark bg-opacity-10">This is 10% opacity success background</div>
Sass
Ud over følgende Sass-funktionalitet kan du overveje at læse om vores inkluderede CSS-tilpassede egenskaber (også kaldet CSS-variabler) for farver og mere.
Variabler
De fleste background-color
hjælpeprogrammer er genereret af vores temafarver, omtildelt fra vores generiske farvepaletvariabler.
$blue: #0d6efd;
$indigo: #6610f2;
$purple: #6f42c1;
$pink: #d63384;
$red: #dc3545;
$orange: #fd7e14;
$yellow: #ffc107;
$green: #198754;
$teal: #20c997;
$cyan: #0dcaf0;
$primary: $blue;
$secondary: $gray-600;
$success: $green;
$info: $cyan;
$warning: $yellow;
$danger: $red;
$light: $gray-100;
$dark: $gray-900;
$gradient: linear-gradient(180deg, rgba($white, .15), rgba($white, 0));
Gråtonefarver er også tilgængelige, men kun en delmængde bruges til at generere hjælpeprogrammer.
$white: #fff;
$gray-100: #f8f9fa;
$gray-200: #e9ecef;
$gray-300: #dee2e6;
$gray-400: #ced4da;
$gray-500: #adb5bd;
$gray-600: #6c757d;
$gray-700: #495057;
$gray-800: #343a40;
$gray-900: #212529;
$black: #000;
Kort
Temafarver sættes derefter ind i et Sass-kort, så vi kan sløjfe over dem for at generere vores hjælpeprogrammer, komponentmodifikatorer og mere.
$theme-colors: (
"primary": $primary,
"secondary": $secondary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark
);
Gråtonefarver er også tilgængelige som et Sass-kort. Dette kort bruges ikke til at generere nogen hjælpeprogrammer.
$grays: (
"100": $gray-100,
"200": $gray-200,
"300": $gray-300,
"400": $gray-400,
"500": $gray-500,
"600": $gray-600,
"700": $gray-700,
"800": $gray-800,
"900": $gray-900
);
RGB-farver genereres fra et separat Sass-kort:
$theme-colors-rgb: map-loop($theme-colors, to-rgb, "$value");
Og baggrundsfarveopacitet bygger på det med deres eget kort, der forbruges af utilities API:
$utilities-bg: map-merge(
$utilities-colors,
(
"black": to-rgb($black),
"white": to-rgb($white),
"body": to-rgb($body-bg)
)
);
$utilities-bg-colors: map-loop($utilities-bg, rgba-css-var, "$key", "bg");
Mixins
Der bruges ingen mixins til at generere vores baggrundsværktøjer , men vi har nogle ekstra mixins til andre situationer, hvor du gerne vil oprette dine egne gradienter.
@mixin gradient-bg($color: null) {
background-color: $color;
@if $enable-gradients {
background-image: var(--#{$variable-prefix}gradient);
}
}
// Horizontal gradient, from left to right
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
@mixin gradient-x($start-color: $gray-700, $end-color: $gray-800, $start-percent: 0%, $end-percent: 100%) {
background-image: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent);
}
// Vertical gradient, from top to bottom
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
@mixin gradient-y($start-color: $gray-700, $end-color: $gray-800, $start-percent: null, $end-percent: null) {
background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent);
}
@mixin gradient-directional($start-color: $gray-700, $end-color: $gray-800, $deg: 45deg) {
background-image: linear-gradient($deg, $start-color, $end-color);
}
@mixin gradient-x-three-colors($start-color: $blue, $mid-color: $purple, $color-stop: 50%, $end-color: $red) {
background-image: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);
}
@mixin gradient-y-three-colors($start-color: $blue, $mid-color: $purple, $color-stop: 50%, $end-color: $red) {
background-image: linear-gradient($start-color, $mid-color $color-stop, $end-color);
}
@mixin gradient-radial($inner-color: $gray-700, $outer-color: $gray-800) {
background-image: radial-gradient(circle, $inner-color, $outer-color);
}
@mixin gradient-striped($color: rgba($white, .15), $angle: 45deg) {
background-image: linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
}
Hjælpeprogrammer API
Baggrundsværktøjer er deklareret i vores utilities API i scss/_utilities.scss
. Lær, hvordan du bruger utilities API.
"background-color": (
property: background-color,
class: bg,
local-vars: (
"bg-opacity": 1
),
values: map-merge(
$utilities-bg-colors,
(
"transparent": transparent
)
)
),
"bg-opacity": (
css-var: true,
class: bg-opacity,
values: (
10: .1,
25: .25,
50: .5,
75: .75,
100: 1
)
),