Właściwość CSSEfekty

backdrop-filter

Nakłada filtr na to, co widać pod elementem, na przykład rozmycie tła za panelem.

Wartość domyślna
none
Dziedziczona
Nie
Animowalna
tak, jako lista funkcji filtrów
Dotyczy
wszystkie elementy
JavaScript
element.style.backdropFilter = "blur(12px)"
Na tej stronie

Przykład

#
CSS
.header {
  position: sticky;
  top: 0;
  background: rgb(10 10 10 / 0.6);
  backdrop-filter: blur(12px);
}
Podgląd

Definicja i zastosowanie

#

Właściwość backdrop-filter działa jak filter, ale nie na sam element, tylko na obszar strony widoczny przez niego. Najpopularniejszy efekt to „szkło”: półprzezroczysty panel z rozmytym tłem pod spodem.

Żeby efekt był widoczny, element musi mieć tło przynajmniej częściowo przezroczyste, na przykład background: rgb(0 0 0 / 0.4). Pełne, nieprzezroczyste tło zasłoni filtr.

Rozmycie tła jest kosztowne obliczeniowo. Na słabszych urządzeniach duże panele z backdrop-filter mogą spowalniać przewijanie, więc stosuj go do niewielkich elementów, jak nagłówki i okienka.

Składnia

#
Składnia
backdrop-filter: none | <funkcja filtra>+;

Wartości

#

Wartości w praktyce

#

none

Tło pod panelem jest ostre.
.demo { backdrop-filter: none; }

blur(10px)

Efekt matowego szkła.
.demo { backdrop-filter: blur(10px); }

grayscale(1)

Tło pod panelem w odcieniach szarości.
.demo { backdrop-filter: grayscale(1); }

blur(8px) saturate(1.8)

Rozmycie z podbitymi kolorami, jak w interfejsach systemowych.
.demo { backdrop-filter: blur(8px) saturate(1.8); }

Obsługa przeglądarek

#

Nowość w przeglądarkach · od 2024 roku

Działa w aktualnych wersjach wszystkich głównych przeglądarek. Starsze wersje mogą tego nie obsługiwać.

  • Chrome
  • Edge
  • Firefox
  • Safari

Dobre praktyki

#
  • Bez półprzezroczystego tła efekt nie będzie widoczny. Zacznij od koloru z przezroczystością 40–70%.
  • Starsze wersje Safari wymagały przedrostka -webkit-backdrop-filter.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.