Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

saturate()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨September 2016⁩.

Die saturate() CSS Funktion übersättigt oder entsättigt das Eingabebild. Ihr Ergebnis ist eine <filter-function>.

Hinweis: saturate() ist als Matrixoperation auf der RGB-Farbe spezifiziert. Es konvertiert die Farbe nicht tatsächlich in das HSL-Modell, welches eine nicht-lineare Operation ist. Daher kann es den Farbton oder die Helligkeit der Originalfarbe nicht beibehalten.

Probieren Sie es aus

filter: saturate(1);
filter: saturate(4);
filter: saturate(50%);
filter: saturate(0);
<section id="default-example">
  <img
    class="transition-all"
    id="example-element"
    src="/shared-assets/images/examples/firefox-logo.svg"
    width="200" />
</section>

Syntax

css
saturate(amount)

Parameter

amount Optional

Der Betrag der Umwandlung, angegeben als ein <number> oder ein <percentage>. Ein Wert unter 100% entsättigt das Bild, während ein Wert über 100% es übersättigt. Ein Wert von 0% ist vollständig entsättigt, während ein Wert von 100% die Eingabe unverändert lässt. Der Initialwert für Interpolation ist 1. Der Standardwert ist 1.

Formale Syntax

<saturate()> = 
saturate( [ <number> | <percentage> ]? )

Beispiele

Beispiele für korrekte Werte bei saturate()

css
saturate(0)     /* Completely unsaturated */
saturate(.4)    /* 40% saturated */
saturate()      /* No effect */
saturate(100%)  /* No effect */
saturate(200%)  /* Double saturation */

saturate() erhält Farbton oder Helligkeit nicht bei

Das folgende Diagramm vergleicht zwei Farbverläufe mit hsl(0 50% 50%) als Mittelpunkt: der erste wird unter Verwendung von saturate() erzeugt, und der zweite verwendet tatsächliche HSL-Farbwerte. Beachten Sie, wie der saturate()-Verlauf Unterschiede in Farbton und Helligkeit an den beiden Enden zeigt.

html
<div>
  <p>Using <code>saturate()</code></p>
  <div id="saturate"></div>
</div>
<div>
  <p>Using <code>hsl()</code></p>
  <div id="hsl"></div>
</div>
js
const saturate = document.getElementById("saturate");
const hsl = document.getElementById("hsl");

for (let i = 0; i <= 200; i++) {
  const div1 = document.createElement("div");
  div1.style.backgroundColor = `hsl(0 ${i / 2}% 50%)`;
  hsl.appendChild(div1);

  const div2 = document.createElement("div");
  div2.style.backgroundColor = "hsl(0 50% 50%)";
  div2.style.filter = `saturate(${i}%)`;
  saturate.appendChild(div2);
}

Spezifikationen

Specification
Filter Effects Module Level 1
# funcdef-filter-saturate

Browser-Kompatibilität

Siehe auch

Die anderen <filter-function> Funktionen, die in Werten der filter und backdrop-filter Eigenschaften verwendet werden können, umfassen: