contrast()
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 contrast()
CSS Funktion passt den Kontrast des Eingabebildes an. Das Ergebnis ist eine <filter-function>
.
Probieren Sie es aus
filter: contrast(1);
filter: contrast(1.75);
filter: contrast(50%);
filter: contrast(0);
<section id="default-example">
<img
class="transition-all"
id="example-element"
src="/shared-assets/images/examples/firefox-logo.svg"
width="200" />
</section>
Syntax
contrast(amount)
Werte
amount
Optional-
Der Kontrast des Ergebnisses, angegeben als
<number>
oder<percentage>
. Ein Wert unter100%
verringert den Kontrast, während ein Wert über100%
ihn erhöht. Ein Wert von0
oder0%
erzeugt ein komplett graues Bild, während ein Wert von1
oder100%
die Eingabe unverändert lässt. Negative Werte sind nicht erlaubt. Der Anfangswert für Interpolation ist1
. Der Standardwert ist1
.
Die folgenden Wertepaare sind äquivalent:
contrast(0) /* Completely gray */
contrast(0%)
contrast(0.65) /* 65% contrast */
contrast(65%)
contrast() /* No effect */
contrast(1)
contrast(100%)
contrast(2) /* Double contrast */
contrast(200%)
Formale Syntax
Beispiele
Mit der backdrop-filter Eigenschaft
Dieses Beispiel wendet einen contrast()
-Filter über die backdrop-filter
CSS-Eigenschaft auf den Absatz und den monospaced Text an, wodurch die Farben des Bereichs hinter dem <p>
und <code>
verschoben werden.
.container {
background: url(image.jpg) no-repeat center / contain #339;
}
p {
backdrop-filter: contrast(0.5);
}
code {
backdrop-filter: contrast(0.15);
}
Mit der filter Eigenschaft
Dieses Beispiel wendet einen contrast()
-Filter über die filter
CSS-Eigenschaft an, der den Kontrast verändert, indem er die Farben des gesamten Elements, einschließlich Inhalt, Rahmen, Hintergrund und Schatten, verschiebt.
p:first-of-type {
filter: contrast(30%);
}
p:last-of-type {
filter: contrast(300%);
}
Mit url() und dem SVG-Kontrastfilter
Das SVG-Element <filter>
wird verwendet, um benutzerdefinierte Filtereffekte zu definieren, die dann mit id
referenziert werden können. Das Primitive <feComponentTransfer>
des <filter>
ermöglicht eine pixelgenaue Farbzuordnung. Angesichts der folgenden:
<filter id="contrast">
<feComponentTransfer>
<feFuncR type="linear" slope="2" intercept="-0.5"/>
<feFuncG type="linear" slope="2" intercept="-0.5"/>
<feFuncB type="linear" slope="2" intercept="-0.5"/>
</feComponentTransfer>
</filter>
Diese Werte erzeugen die gleichen Ergebnisse:
filter: contrast(200%);
filter: url(#contrast); /* with embedded SVG */
filter: url(folder/fileName.svg#contrast); /* external svg filter definition */
Dieses Beispiel zeigt drei Bilder: das Bild mit einer contrast()
-Filterfunktion, das Bild mit einem äquivalenten url()
-Filter und die Originalbilder zum Vergleich:
Spezifikationen
Specification |
---|
Filter Effects Module Level 1 # funcdef-filter-contrast |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- CSS Filtereffekte Modul
- Die anderen
<filter-function>
Funktionen, die in den Werten derfilter
undbackdrop-filter
Eigenschaften verwendet werden können, umfassen: