CSS Glassmorphism 2025: die richtige Implementierung

Die meisten Tutorials stammen aus 2021. Was sich geändert hat und was du falsch machst.

9 Min. Lesezeit backdrop-filter WCAG 2.1

Glassmorphism explodierte 2021 durch ein Figma-Tutorial und Apples macOS Big Sur. Vier Jahre später liegt die globale Unterstützung für backdrop-filter bei 96 Prozent, aber die Rankings für die Suchanfrage belegen dieselben veralteten Artikel wie damals. Dieser Leitfaden schliesst die Lücke.

Wir behandeln den korrekten CSS-Property-Stack, wie du lesbaren Text auf jedem Hintergrund gewährleistest, warum deine Glass-Card auf Android die Framerate zerstört, und wie du eine progressive Implementierung schreibst, die in jedem Browser graceful degradiert.

Was Glassmorphism wirklich ist

Glassmorphism ist ein UI-Stil, der Milchglas simuliert: eine durchscheinende Oberfläche, die den Inhalt dahinter unscharf macht. Der Effekt basiert auf drei visuellen Eigenschaften:

  • Hintergrundunschärfe mit backdrop-filter: blur()
  • Durchscheinende Füllung mit rgba()
  • Dezenter Rand zur Tiefenwirkung

Der häufige Fehler in 2021er-Tutorials war, filter: blur() auf die Card anzuwenden, was den Inhalt der Card unscharf macht. Das ist das Gegenteil des gewünschten Effekts.

Der korrekte Property-Stack 2025

.glass-card {
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
}

Das -webkit--Präfix ist für Safari noch notwendig. Das Weglassen bedeutet, dass die Card für rund 20 Prozent des mobilen Traffics kaputt aussieht.

Hintergrund-Alpha und Unschärferadius

  • Starke Unschärfe (20-30 px) und niedriges Alpha (0.05-0.12): maximaler Milchglas-Effekt
  • Mittlere Unschärfe (10-16 px) und mittleres Alpha (0.12-0.25): Standard-Card
  • Leichte Unschärfe (4-8 px) und hohes Alpha (0.3-0.5): subtiler Glas-Hinweis

WCAG-Kontrast: das stille Barrierefreiheitsproblem

WCAG 2.1 Level AA verlangt mindestens 4.5:1 für normalen Text und 3:1 für grossen Text. Da der Hintergrund eine Unschärfe von unvorhersehbarem Inhalt ist, kannst du das Kontrastverhältnis beim Design nicht kennen.

Drei Lösungen nach Priorität

1. Text-Shadow

.glass-card p {
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

2. Höheres Alpha im Textbereich

.glass-card .text-area {
  background: rgba(0, 0, 0, 0.35);
  padding: 12px 16px;
  border-radius: 8px;
}

3. Hintergrund hinter der Card kontrollieren

Sicherstellen, dass der Bereich hinter der Glass-Card nie eine bestimmte Helligkeit überschreitet.

Kostenloses Tool Farbkontrast-Prüfer WCAG AA / AAA Konformität für jede Vorder-/Hintergrundfarbe prüfen

Performance: warum deine Glass-Card die Framerate auf Mobile zerstört

Auf einem Android-Mittelklassegerät mit komplexem Hintergrund kann eine einzige Glass-Card mit 12 px Unschärfe die Framerate von 60 fps auf 40 fps senken.

Performance-Regeln

  • Unschärferadius auf 16 px begrenzen
  • backdrop-filter nicht animieren, stattdessen opacity oder transform
  • Keine gestapelten Glass-Layer auf der gleichen Z-Achse
  • will-change: transform hinzufügen
  • contain: layout style paint verwenden
@media (prefers-reduced-motion: reduce) {
  .glass-card {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: rgba(255, 255, 255, 0.85);
  }
}

Progressive Fallback

.glass-card {
  background: rgba(30, 30, 30, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.24);
}

@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)) {
  .glass-card {
    background: rgba(255, 255, 255, 0.10);
    backdrop-filter: blur(12px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
  }
}

@media (prefers-reduced-motion: reduce) {
  @supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)) {
    .glass-card {
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
      background: rgba(30, 30, 30, 0.88);
    }
  }
}
Kostenloses Tool Glassmorphism-Generator Glass-Karten mit backdrop-filter, @supports-Fallback und Live-Vorschau

Glassmorphism im Dark Mode

.glass-card {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
}

@media (prefers-color-scheme: light) {
  .glass-card {
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(16px) saturate(140%);
    -webkit-backdrop-filter: blur(16px) saturate(140%);
  }
}

Wann Glassmorphism NICHT verwenden

  • Datendichte Interfaces wie Tabellen und Code-Editoren
  • Inhalt über nutzergenerierte Bilder
  • Low-Performance-Zielgeräte
  • Häufig geöffnete und geschlossene interaktive Overlays

Probiere den interaktiven Generator

Nutze das PixCode Glassmorphism-Tool, um Änderungen in Echtzeit zu sehen und das finale CSS mit dem @supports-Fallback zu exportieren.

Glassmorphism-Generator öffnen
Kostenloses Tool Box-Shadow-Generator Alle Parameter visuell anpassen und produktionsreifes CSS kopieren

CSS Glassmorphism 2025: Browserunterstützung, Performance, Barrierefreiheit

CSS Glassmorphism basiert auf der backdrop-filter-Property, die 2023 vollständige Cross-Browser-Unterstützung erreichte. 2025 liegt die globale Browser-Unterstützung bei etwa 96 Prozent. Firefox hat Unterstützung in Version 103 (2022) hinzugefügt, wodurch JavaScript-Polyfills nicht mehr nötig sind.

backdrop-filter erzwingt GPU-Compositing, was pro Frame und pro Pixel proportional zum Quadrat des Unschärferadius kostet. Für responsive Layouts empfiehlt es sich, den Radius auf kleineren Viewports per Media Query zu reduzieren.

Häufig gestellte Fragen

Was ist der Unterschied zwischen backdrop-filter und filter in CSS?+
backdrop-filter wendet Effekte auf den Bereich hinter einem Element an, ohne dessen eigenen Inhalt zu beeinflussen. filter wirkt auf das Element selbst. Für Glassmorphism immer backdrop-filter verwenden: filter: blur() auf der Card macht den Text unscharf.
Unterstützt Firefox backdrop-filter im Jahr 2025?+
Ja. Firefox hat die Unterstützung in Version 103 (Juli 2022) hinzugefügt. 2025 wird es in allen gängigen Browsern vollständig unterstützt: Chrome 76+, Firefox 103+, Safari 9+ (mit -webkit-Präfix), Edge 17+.
Warum sieht meine Glass-Card auf Mobile schlecht aus?+
Zwei häufige Gründe: Erstens Performance - hohe Unschärferadien (über 16-20 px) können auf Mid-Range-Android Framedrops verursachen. Zweitens Kontrast - auf mobilen Displays mit hoher Helligkeit kann eine Glass-Card mit niedrigem Alpha schwer lesbar sein.
Wie mache ich Glassmorphism barrierefrei?+
Das Hauptproblem ist der Textkontrast. WCAG 2.1 AA verlangt 4.5:1. Lösungen: Text-Shadow hinzufügen, dunklen Hintergrund im Textbereich setzen, oder den Hintergrund hinter der Card kontrollieren. Auch prefers-reduced-motion respektieren.
Welchen Unschärferadius für Glassmorphism verwenden?+
Der meistgenutzte Bereich für Produktions-UI ist 8-16 px. Unter 8 px ist der Frost-Effekt kaum sichtbar. Über 20 px ist der Effekt teuer. Für mobile Layouts maximal 10-12 px empfohlen.
Wie schreibe ich einen Fallback für Browser ohne backdrop-filter?+
@supports-Regel mit Progressive Enhancement: soliden Basisstil definieren, dann innerhalb von @supports mit dem Glass-Effekt überschreiben. Nicht unterstützte Browser sehen eine saubere solide Card.
Ist Glassmorphism 2025 noch ein relevanter Design-Trend?+
Ja. Es hat sich von einem Trend zu einem Standard-UI-Muster entwickelt. Apple, Microsoft und Google nutzen Milchglas-Effekte in ihren OS-UIs. Der 2021er Enthusiasmus hat sich zu einem gezielteren Einsatz entwickelt.