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()
-Funktion des CSS function passt den Kontrast des Eingangsbilder 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 als<percentage>
. Ein Wert unter100%
verringert den Kontrast, während ein Wert über100%
ihn erhöht. Ein Wert von0
oder0%
erzeugt ein Bild, das komplett grau ist, während ein Wert von1
oder100%
das Eingangssignal unverändert lässt. Negative Werte sind nicht erlaubt. Der anfängliche Wert für die Interpolation ist1
. Der Standardwert ist1
.
Die folgenden sind Paare von gleichwertigen Werten:
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
<contrast()> =
contrast( [ <number> | <percentage> ]? )
Beispiele
Mit der backdrop-filter-Eigenschaft
In diesem Beispiel wird über die backdrop-filter
CSS-Eigenschaft ein contrast()
-Filter auf den Absatz und den Monospace-Text angewendet, wodurch eine Farbverschiebung im Bereich hinter dem <p>
und <code>
erfolgt.
.container {
background: url("unity_for_the_people.jpg") no-repeat center / contain #333399;
}
p {
backdrop-filter: contrast(0.5);
}
code {
backdrop-filter: contrast(0.15);
}
Mit der filter-Eigenschaft
In diesem Beispiel wird ein contrast()
-Filter über die filter
CSS-Eigenschaft angewendet, der den Kontrast durch Verschieben der Farben des gesamten Elements ändert, einschließlich Inhalt, Rahmen, Hintergrund und Schatten.
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 über id
referenziert werden können. Das Primitive <feComponentTransfer>
des <filter>
ermöglicht die Farbzuordnung auf Pixelniveau. Angenommen, folgende:
<svg
xmlns="http://www.w3.org/2000/svg"
id="svg"
viewBox="0 0 240 151"
height="0"
width="0"
overflow="visible"
color-interpolation-filters="sRGB">
<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>
</svg>
Diese Werte führen zu den gleichen Ergebnissen:
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 angewendet, das Bild mit einem äquivalenten url()
-Filter angewendet und das originale Bild zum Vergleich:
Spezifikationen
Specification |
---|
Filter Effects Module Level 1 # funcdef-filter-contrast |
Browser-Kompatibilität
Loading…
Siehe auch
- CSS Filter Effekte Modul
- Die anderen
<filter-function>
-Funktionen, die in Werten der Eigenschaftenfilter
undbackdrop-filter
verwendet werden können, umfassen: