CSS-Typ <gradient>
Baseline
Weitgehend verfügbar
*
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Der CSS-Datentyp <gradient> ist ein spezieller Typ von <image>, der aus einem stufenlosen Übergang zwischen zwei oder mehr Farben besteht.
Ein CSS-Farbverlauf hat keine intrinsischen Abmessungen; das heißt, er hat weder eine natürliche oder bevorzugte Größe noch ein bevorzugtes Seitenverhältnis. Seine konkrete Größe entspricht der Größe des Elements, auf das er angewendet wird.
Probieren Sie es aus
background: linear-gradient(#f69d3c, #3f87a6);
background: radial-gradient(#f69d3c, #3f87a6);
background: repeating-linear-gradient(#f69d3c, #3f87a6 50px);
background: repeating-radial-gradient(#f69d3c, #3f87a6 50px);
background: conic-gradient(#f69d3c, #3f87a6);
<section class="display-block" id="default-example">
<div id="example-element"></div>
</section>
#example-element {
min-height: 100%;
}
Syntax
Der Datentyp <gradient> wird mit einem der unten aufgeführten Funktionstypen definiert.
Linearer Farbverlauf
Lineare Farbverläufe führen Farben entlang einer imaginären Linie stufenlos ineinander über. Sie werden mit der Funktion linear-gradient() erzeugt.
Radialer Farbverlauf
Radiale Farbverläufe führen Farben stufenlos von einem Mittelpunkt (Ursprung) aus ineinander über. Sie werden mit der Funktion radial-gradient() erzeugt.
Konischer Farbverlauf
Konische Farbverläufe führen Farben stufenlos um einen Kreis herum ineinander über. Sie werden mit der Funktion conic-gradient() erzeugt.
Wiederholender Farbverlauf
Wiederholende Farbverläufe duplizieren einen Farbverlauf so oft wie nötig, um einen gegebenen Bereich auszufüllen. Sie werden mit den Funktionen repeating-linear-gradient(), repeating-radial-gradient() und repeating-conic-gradient() erzeugt.
Interpolation
Wie bei jeder Interpolation mit Farben werden Farbverläufe im alpha-prämultiplizierten Farbraum berechnet. Dadurch wird verhindert, dass unerwartete Grautöne auftreten, wenn sich sowohl die Farbe als auch die Deckkraft ändern. (Beachten Sie, dass ältere Browser dieses Verhalten bei Verwendung des Schlüsselworts transparent möglicherweise nicht verwenden.)
Formale Syntax
<gradient> =
<linear-gradient()> |
<repeating-linear-gradient()> |
<radial-gradient()> |
<repeating-radial-gradient()> |
<conic-gradient()> |
<repeating-conic-gradient()>
<linear-gradient()> =
linear-gradient( [ <linear-gradient-syntax> ] )
<repeating-linear-gradient()> =
repeating-linear-gradient( [ <linear-gradient-syntax> ] )
<radial-gradient()> =
radial-gradient( [ <radial-gradient-syntax> ] )
<repeating-radial-gradient()> =
repeating-radial-gradient( [ <radial-gradient-syntax> ] )
<conic-gradient()> =
conic-gradient( [ <conic-gradient-syntax> ] )
<repeating-conic-gradient()> =
repeating-conic-gradient( [ <conic-gradient-syntax> ] )
<linear-gradient-syntax> =
[ [ <angle> | <zero> | to <side-or-corner> ] || <color-interpolation-method> ]? , <color-stop-list>
<radial-gradient-syntax> =
[ [ [ <radial-shape> || <radial-size> ]? [ at <position> ]? ] || <color-interpolation-method> ]? , <color-stop-list>
<conic-gradient-syntax> =
[ [ [ from [ <angle> | <zero> ] ]? [ at <position> ]? ] || <color-interpolation-method> ]? , <angular-color-stop-list>
<side-or-corner> =
[ left | right ] ||
[ top | bottom ]
<color-interpolation-method> =
in [ <rectangular-color-space> | <polar-color-space> <hue-interpolation-method>? | <custom-color-space> ]
<color-stop-list> =
<linear-color-stop> , [ <linear-color-hint>? , <linear-color-stop> ]#?
<radial-shape> =
circle |
ellipse
<radial-size> =
<radial-extent> |
<length [0,∞]> |
<length-percentage [0,∞]>{2}
<position> =
<position-one> |
<position-two> |
<position-four>
<angular-color-stop-list> =
<angular-color-stop> , [ <angular-color-hint>? , <angular-color-stop> ]#?
<rectangular-color-space> =
srgb |
srgb-linear |
display-p3 |
display-p3-linear |
a98-rgb |
prophoto-rgb |
rec2020 |
lab |
oklab |
<xyz-space>
<polar-color-space> =
hsl |
hwb |
lch |
oklch
<hue-interpolation-method> =
[ shorter | longer | increasing | decreasing ] hue
<custom-color-space> =
<dashed-ident>
<linear-color-stop> =
<color> <color-stop-length>?
<linear-color-hint> =
<length-percentage>
<radial-extent> =
closest-corner |
closest-side |
farthest-corner |
farthest-side
<length-percentage> =
<length> |
<percentage>
<position-one> =
left |
center |
right |
top |
bottom |
x-start |
x-end |
y-start |
y-end |
block-start |
block-end |
inline-start |
inline-end |
<length-percentage>
<position-two> =
[ left | center | right | x-start | x-end ] && [ top | center | bottom | y-start | y-end ] |
[ left | center | right | x-start | x-end | <length-percentage> ] [ top | center | bottom | y-start | y-end | <length-percentage> ] |
[ block-start | center | block-end ] && [ inline-start | center | inline-end ] |
[ start | center | end ]{2}
<position-four> =
[ [ left | right | x-start | x-end ] <length-percentage> ] && [ [ top | bottom | y-start | y-end ] <length-percentage> ] |
[ [ block-start | block-end ] <length-percentage> ] && [ [ inline-start | inline-end ] <length-percentage> ] |
[ [ start | end ] <length-percentage> ]{2}
<angular-color-stop> =
<color> <color-stop-angle>?
<angular-color-hint> =
<angle-percentage> |
<zero>
<xyz-space> =
xyz |
xyz-d50 |
xyz-d65
<color-stop-length> =
<length-percentage>{1,2}
<color-stop-angle> =
[ <angle-percentage> | <zero> ]{1,2}
<angle-percentage> =
<angle> |
<percentage>
Beispiele
>Beispiel für einen linearen Farbverlauf
Ein linearer Farbverlauf.
.linear-gradient {
background: linear-gradient(
to right,
red,
orange,
yellow,
green,
blue,
indigo,
violet
);
}
Beispiel für einen radialen Farbverlauf
Ein radialer Farbverlauf.
.radial-gradient {
background: radial-gradient(red, yellow, dodgerblue);
}
Beispiel für einen konischen Farbverlauf
Ein Beispiel für einen konischen Farbverlauf.
.conic-gradient {
background: conic-gradient(pink, coral, lime);
}
Beispiele für wiederholende Farbverläufe
Beispiele für wiederholende lineare und radiale Farbverläufe.
.linear-repeat {
background: repeating-linear-gradient(
to top left,
pink,
pink 5px,
white 5px,
white 10px
);
}
.radial-repeat {
background: repeating-radial-gradient(
lime,
lime 15px,
white 15px,
white 30px
);
}
.conic-repeat {
background: repeating-conic-gradient(lime, pink 30deg);
}
Spezifikationen
| Spezifikation |
|---|
| CSS Images Module Level 4> # gradients> |