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

View in English Always switch to English

brightness()

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 brightness() CSS <filter-function> wendet einen linearen Multiplikatorwert auf ein Element oder ein Eingabebild an, wodurch das Bild heller oder dunkler erscheint.

Probieren Sie es aus

filter: brightness(1);
filter: brightness(1.75);
filter: brightness(50%);
filter: brightness(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
brightness(amount)

Werte

amount Optional

Helligkeit, angegeben als <number> oder <percentage>. Ein Wert unter 100% macht das Eingabebild oder das Element dunkler, während ein Wert über 100% es heller macht. Ein Wert von 0% erzeugt ein komplett schwarzes Bild oder Element, während ein Wert von 100% das Eingangsbild unverändert lässt. Andere Werte zwischen 0% und 100% haben einen linearen Multiplikatoreffekt. Werte größer als 100% sind erlaubt und liefern hellere Ergebnisse. Der Anfangswert für Interpolation ist 1. Negative Werte sind nicht erlaubt. Der Standardwert ist 1.

Die folgenden Paare sind gleichwertig:

css
brightness(0)   /* Brightness is reduced to zero, so input turns black */
brightness(0%)

brightness(0.4) /* Brightness of input is reduced to 40%, so input is 60% darker */
brightness(40%)

brightness()     /* Brightness of input is not changed */
brightness(1)
brightness(100%)

brightness(2)   /* Brightness of input is doubled */
brightness(200%)

Formale Syntax

<brightness()> = 
brightness( [ <number> | <percentage> ]? )
Diese Syntax spiegelt den neuesten Standard gemäß CSS Specification wider. Möglicherweise haben nicht alle Browser jeden Teil implementiert. Siehe Browserkompatibilität für Informationen zur Unterstützung.

Beispiele

Anwendung der Helligkeit mittels der backdrop-filter-Eigenschaft

Dieses Beispiel zeigt, wie der brightness()-Filter auf einen Absatz über die backdrop-filter CSS-Eigenschaft angewendet wird.

CSS

css
.container {
  background: url("be_fierce.jpg") no-repeat right / contain #d4d5b2;
}
p {
  backdrop-filter: brightness(150%);
  text-shadow: 2px 2px white;
}

Ergebnis

In diesem Beispiel verschieben sich die Farben im Bereich hinter dem <p>-Element linear. Wenn die backdrop-filter-Eigenschaft auf brightness(0%) gesetzt wäre, wäre der <div>-Bereich mit dem <p>-Element schwarz und hätte das dahinterliegende Bild verborgen. Bei brightness(100%) wäre die <div>-Bereichsfarbe dieselbe wie der Eingang #d4d5b2, und das dahinterliegende Bild wäre vollständig transparent. Mit der auf 150% eingestellten Helligkeit, wie in diesem Beispiel, werden die Farben im Bild dahinter durch die Helligkeit des <div>-Elements verborgen.

Anwendung der Helligkeit mittels der filter-Eigenschaft

In diesem Beispiel wird ein brightness()-Filter auf das gesamte Element angewendet, einschließlich Inhalt, Rahmen und Hintergrundbild über die filter CSS-Eigenschaft. Das Ergebnis zeigt drei Variationen unterschiedlicher Helligkeitswerte.

css
p:first-of-type {
  filter: brightness(50%);
}
p:last-of-type {
  filter: brightness(200%);
}

Anwendung der Helligkeit mittels des url()-SVG-Helligkeitsfilters

Das SVG-<filter>-Element wird verwendet, um benutzerdefinierte Filtereffekte zu definieren, die dann durch id referenziert werden können. Das <filter>-Element verwendet das <feComponentTransfer>-Primitive, um die Farbwerte auf Pixelbasis neu zuzuordnen.

In diesem Beispiel wird zur Erstellung eines Filters, der den Inhalt, auf den er angewendet wird, um 25 % abdunkelt (d.h. 75 % der ursprünglichen Helligkeit), das slope-Attribut auf 0.75 gesetzt. Wir können dann den Filter durch id referenzieren.

Angenommen, folgendes gilt:

html
<svg role="none">
  <filter id="darken25" color-interpolation-filters="sRGB">
    <feComponentTransfer>
      <feFuncR type="linear" slope="0.75" />
      <feFuncG type="linear" slope="0.75" />
      <feFuncB type="linear" slope="0.75" />
    </feComponentTransfer>
  </filter>
</svg>

Die folgenden Deklarationen erzeugen ähnliche Effekte:

css
filter: brightness(75%);
filter: url("#darken25"); /* with embedded SVG */
filter: url("folder/fileName.svg#darken25"); /* external svg filter definition */

In den Bildern unten hat das erste eine brightness()-Filterfunktion angewendet, das zweite hat eine ähnliche SVG-Helligkeitsfunktion, und das dritte ist das Originalbild zum Vergleich.

Spezifikationen

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

Browser-Kompatibilität

Siehe auch