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⁩.

Das 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% verdunkelt das Eingabebild oder Element, während ein Wert über 100% es aufhellt. Ein Wert von 0% erzeugt ein komplett schwarzes Bild oder Element, während ein Wert von 100% das Eingabebild unverändert lässt. Andere Werte zwischen 0% und 100% haben einen linearen Multiplikatoreffekt. Werte größer als 100% sind erlaubt und führen zu helleren Ergebnissen. Der anfängliche Wert für Interpolation ist 1. Negative Werte sind nicht erlaubt. Der Standardwert ist 1.

Die folgenden sind Paare äquivalenter Werte:

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> ]? )

Beispiele

Anwendung von Helligkeit über die 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ürde, wäre der <div>-Bereich mit dem <p>-Element schwarz und würde das Bild dahinter verbergen. Bei brightness(100%) wäre die Farbe des <div>-Bereichs dieselbe wie die Eingabe #d4d5b2, und das Bild dahinter wäre komplett transparent. Mit der Helligkeit auf 150%, wie in diesem Beispiel, werden die Farben im Bild dahinter durch die Helligkeit des <div>-Elements verborgen.

Anwendung von Helligkeit über die filter-Eigenschaft

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

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

Anwendung von Helligkeit über den url() SVG-Helligkeitsfilter

Das SVG-Element <filter> wird verwendet, um benutzerdefinierte Filtereffekte zu definieren, die dann über id referenziert werden können. Das <filter>-Element's primitive <feComponentTransfer> ermöglicht die pixelgenaue Farbzuordnung.

In diesem Beispiel, um einen Filter zu erstellen, der den Inhalt um 25% abdunkelt (d.h. 75% der ursprünglichen Helligkeit), wird das slope-Attribut auf 0.75 gesetzt. Damit können wir den Filter dann über id referenzieren.

Angesichts des Folgenden:

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 unten gezeigten Bildern hat das erste eine brightness()-Filterfunktion angewendet, das zweite hat eine ähnliche SVG-Helligkeitsfunktion angewendet, und das dritte ist das Originalbild zum Vergleich.

Spezifikationen

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

Browser-Kompatibilität

Siehe auch