Neumorphismus-Generator
Weiche Benutzeroberflächeneffekte im neumorphen Stil erstellen.
Geprüft von ZeroUtil Editorial Team · Zuletzt geprüft
background: #e0e5ec;
border-radius: 16px;
box-shadow: 5px 5px 10px #c6cfdc,
-5px -5px 10px #f9fafb;Den Neumorphismus-Generator verwenden
- Die Oberflächenfarbe wählen - beginne im sanft-neutralen Bereich (
#e0e5ec,#f0f0f3,#2a2d3afür den Dunkelmodus). Dieselbe Farbe wird für das Element, die Seite und die Mathematik verwendet, die beide Schattentöne ableitet. - Den Größen-Schieberegler setzen - das ist der gemeinsame Schattenversatz und Unscharf-Radius. Ein größerer Wert erzeugt eine weichere, dramatischere Extrusion.
- Intensität anpassen, um zu ändern, wie weit die zwei Schattenfarben von der Oberflächen-Helligkeit entfernt sind. Niedrige Intensität ist subtil, hohe Intensität ist cartoonartig.
- Die Form wählen: Flach hält die Oberfläche gleichmäßig, Konkav fügt einen subtilen nach innen gerichteten Farbverlauf hinzu, Konvex wölbt nach außen, Gepresst kippt die Schatten nach innen für eine eingesenkte Vertiefung.
- Den Eckenradius setzen und das generierte CSS kopieren.
Was der Generator im Hintergrund ausgibt
Eine neumorphe Oberfläche besteht aus genau zwei Dingen: einem Hintergrund, der seinem Elternteil entspricht, und einem box-shadow-Paar mit gegenlaufigen Versätzen. Das Tool berechnet die hellen und dunklen Schattenfarben, indem es die Oberflächen-HSL-Helligkeit um den Intensitätsbetrag nach oben und unten verschiebt (implementiert durch das relative CSS Color Level 4-Parsing, das der Designer manuell als zwei color-mix(in srgb, ...)-Ausdrücke schreiben würde). Die Ausgabe ist daher ein Element, ein Hintergrund und eine box-shadow-Regel der Form {size}px {size}px {size*2}px darkShade, -{size}px -{size}px {size*2}px lightShade. Für die Gepresst-Variante tauscht der Generator die Reihenfolge und fügt beiden Schatten das Präfix inset hinzu, sodass das Licht das Innere unten rechts statt die Außenseite oben links trifft. Kein Filter-Pass, keine Pseudo-Elemente - alles ist eine einzige Deklaration, die der Browser als Teil seiner eigenen Paint-Layer des Elements rastert.
Wann Neumorphismus tatsächlich hilft
- Mediensteuerungsflachen, wo Schaltflächen physisch wirken müssen (Lautstärkeregler, Wiedergabe-Pads, Thermostat-Zifferblätter).
- Ruhige, niedrig-dichte Dashboards, wo ein einzelnes Farbfeld mit sanfter Tiefe ein Gitter hochkontrastiger Karten übertrifft.
- Beruhrungs-zuerst-Tablet-UIs, wo die großen Touch-Targets von einem taktilen und drückbaren Erscheinungsbild profitieren.
- Prototypen von Hardware-Companion-Apps (Smart-Locks, Geräte), wo die Software das Gerätegehäusematerial widerspiegeln soll.
- Dekorative nicht-interaktive Flächen: Karten-Rahmen, Abschnittstrenner, Bild-Mounts.
Das Barrierefreiheitsproblem, das du nicht ignorieren kannst
Neumorphismus scheitert stark am Kontrast. WCAG 2.1 SC 1.4.11 (Nicht-Text-Kontrast) fordert, dass UI-Komponenten ein 3:1-Verhältnis gegenüber benachbarten Farben einhalten, und eine neumorphe Schaltfläche hat konstruktionsbedingt dieselbe Farbe wie ihr Hintergrund plus zwei kontrastarme Schatten. Auf einer #e0e5ec-Oberfläche ist der helle Schatten ungefähr #ffffff und der dunkle Schatten ungefähr #a3b1c6 - das Verhältnis der Schaltflächen-Füllung zur umgebenden Oberfläche beträgt 1,00:1, was ein automatisches Scheitern ist. Das bedeutet, dass Screenreader-Nutzer in Ordnung sind, aber sehschwache Nutzer, Nutzer mit hellem Umgebungslicht und Nutzer mit billigen LCD-Bildschirmen die Schaltflächenkanten einfach nicht sehen können. Die üblichen Abhilfen sind: Den Stil nur für Dekoration reservieren, jede interaktive Oberfläche mit einem sekundären Hinweis versehen (ein getöntes Icon, ein farbiger Fokusring oder ein 1px-Rahmen) oder den Stil zugunsten eines flachen Systems, das das Verhältnis besteht, komplett fallen lassen. Andere Randfälle sind: Schatten, die abgeschnitten werden, wenn sich das Element nahe einer Containerkante befindet, Schatten, die innerhalb eines overflow: hidden-Elternelements verschwinden, und Safaris leicht andere Unscharf-Abnahme, die sichtbar unterschiedliche Schattenweichheit als Chrome ergibt.
Warum "Soft-UI"-Schatten nur box-shadow sind
Das CSS Backgrounds and Borders Module Level 3 spezifiziert box-shadow als eine geordnete Liste von Schatten, jeder bestehend aus horizontalem Versatz, vertikalem Versatz, Unscharf-Radius, Spread, Farbe und einem optionalen inset-Schlüsselwort. Neumorphismus sind einfach zwei Schatten in dieser Liste, wobei der zweite Schatten das räumliche Spiegelbild des ersten ist und die Farben ein symmetrisches Paar um die Oberflächen-Helligkeit des Elements in HSL sind (oder genauer in OKLCH, wenn du auf beiden Seiten perzeptuell gleiche Dunkelheit möchtest - laut Bjorn Ottosson's A perceptual color space for image processing von 2020 sehen HSL-Spiegel bei gesättigten Farbtönen ungleichmäßig aus, weil HSL-Helligkeit nicht perzeptuell gleichmäßig ist). Der Grund, warum der Stil uberhaupt funktioniert, ist die Annahme des menschlichen visuellen Systems einer Lichtquelle von oben: Wir lesen die Hervorhebung oben links und den Schatten unten rechts als Beweis dafür, dass die Oberfläche sich zu uns hin wölbt. Das Paar umkehren und das Gehirn liest es als Delle - genau so wird die Gepresst-Variante gemacht.
Vergleich mit den Alternativen
Material Design 3 verwendet Elevations-Tokens (--md-sys-elevation-1 bis -5), die ähnliche Tiefe mit viel besserem Kontrast erzeugen, weil sie neben den Schatten einen subtilen Ton-Lift hinzufügen. Apples Human Interface Guidelines seit Big Sur verwenden "Vibranzmaterialien" (Backdrop-Filter auf einer gruppierten Oberflächenfarbe), die Tiefe ohne Kontrast-Kosten geben. Skeuomorphismus, der ältere 2007-2013-iOS-Look, verwendete echte Farbverläufe und innere Hervorhebungen und zahlte teuer in visuellem Lärm. Neumorphismus sitzt in einer engen Nische zwischen diesen dreien: ruhiger als Skeuomorphismus, strukturierter als Material, weniger datenschwer als Vibranzmaterialien. Verwende es, wenn das Produkt absichtlich ruhig ist und die Barrierefreiheitsprüfung Raum für kreative Abmilderung hat; greife auf Material oder Flat, wenn Lesbarkeit die wichtigste Kennzahl ist.
Häufig gestellte Fragen
Warum scheitert Neumorphismus so oft an WCAG 1.4.11?
Weil die Schaltflächenoberfläche dieselbe Farbe wie die Seite hat und die einzigen visuellen Hinweise, die sie unterscheiden, zwei kontrastarme Schatten sind. Der gemessene Kontrast von Füllung zu Umgebung beträgt effektiv 1:1, während das Erfolgskriterium 3:1 verlangt. Ein schwacher farbiger Rahmen, ein subtiler Icon-Ton oder ein dunklerer Fokusring sind die üblichen Fixes, aber die ehrliche Antwort ist, dass der Stil dekorativ-zuerst ist und du ihn für primäre Aktionen meiden solltest.
Was ist die Beziehung zwischen den zwei Box-Schatten?
Sie sind ein Spiegelpaar: Der dunkle Schatten liegt bei einem positiven (rechts, unten) Versatz und der helle Schatten bei dem genau entgegengesetzten negativen Versatz. Ihre Farben sind symmetrisch um die Oberflächen-Helligkeit - der dunkle ist die Oberflächen-Helligkeit minus dem Intensitätswert, der helle ist die Oberflachen-Helligkeit plus demselben Betrag. Sie in HSL zu spiegeln ist einfach; sie in OKLCH zu spiegeln ist perzeptuell ehrlicher, aber das Auge erkennt bei niedrigen Sättigungen kaum den Unterschied.
Warum zeigt mein neumorphes Element einen einzelnen flachen Schatten?
Höchstwahrscheinlich befindet es sich innerhalb eines Elternelements mit <code>overflow: hidden</code>, das den nach außen zeigenden Schatten auf einer oder mehreren Seiten abschneidet. Prüfe auch, ob der Eltern- Hintergrund genau mit dem Elementen-Hintergrund übereinstimmt - wenn der Elternteil ein Stückchen heller oder dunkler ist, bricht die Illusion zusammen und das Element wirkt wie eine normale Karte mit einem Schatten.
Kann ich Neumorphismus mit dem Dunkelmodus kombinieren?
Ja, aber du musst die Intensität stark reduzieren. Die menschliche Wahrnehmung von Schattenkontrast ist nicht-linear: Dasselbe Helligkeitsdelta, das auf einer <code>#e0e5ec</code>-Oberfläche als "weich" wirkt, wirkt auf einer <code>#1f2937</code>-Oberfläche als "schlammige Flecken". Halbiere den Intensitätswert für den Dunkelmodus oder berechne die Schattenfarben besser in OKLCH, damit beide Schatten perzeptuell gleichweit von der Basis entfernt sind.
Was ist der Unterschied zwischen Konkav und Konvex?
Beide verwenden dasselbe äußere Schattenpaar, aber sie fügen einen inneren linearen Farbverlauf zur Oberflache selbst hinzu. Konkave Farbverläufe verlaufen von heller oben links zu dunkler unten rechts, was als nach innen gekrümmte Oberfläche wahrgenommen wird. Konvex kehrt den Farbverlauf um, was als nach außen wölbend wahrgenommen wird. Flach lässt den Farbverlauf weg. Gepresst ist ein völlig anderes Tier: Es verwendet <code>inset</code> an beiden Schatten, sodass das Element in die Seite eingetieft wirkt.
Ersetzt der gepresste Zustand :active?
Nein. Gepresst ist das statische Erscheinungsbild einer Schaltfläche, die im Ruhezustand "hineingedruckt" aussehen soll - zum Beispiel ein Umschalter, der den Ein-Zustand anzeigt. Der interaktive :active-Zustand sollte trotzdem an jeder Schaltfläche verdrahtet sein, unabhängig davon, welche neumorphe Variante du gewählt hast, und für Barrierefreiheit solltest du bei :focus-visible ebenfalls auf einen ausgefüllten oder hochkontrastigen Stil wechseln.
Warum verwendet der Generator kein filter: drop-shadow?
Weil drop-shadow den Alpha-Kanal der Form respektiert und damit nur einen Schatten pro Filter-Eintrag erzeugt, während Neumorphismus den Schatten auf beiden Seiten der Border-Box des Elements abschneiden und zwei unabhängige farbige Schatten in einer einzigen Deklaration erlauben muss. Box-shadow ist das richtige Primitiv; drop-shadow ist für das Rendering im Stil "PNG mit Transparenz".
Verlassen irgendwelche Daten meinen Browser?
Nein. Der Generator ist eine Preact-Komponente, die Schiebereglerwerte im React-Zustand speichert und sie in einen CSS-String serialisiert, wenn du auf Kopieren drückst. Kein fetch-Request, kein Drittanbieter-Skript läuft gegen deine Farbwahl, und der generierte Code passiert nie einen Server. Du kannst dein Netzwerk trennen und weiterhin generieren.
Was passiert auf altem iOS Safari?
Das alles ist Standard-Box-Shadow und Background-Color, die beide seit Safari 5 stabil sind. Der einzige Kompatibilitätshinweis ist, dass extrem große Unscharf-Radien (über 100px) zwischen Blink und WebKit aufgrund divergierender Gaussian-Kernel-Näherungen leicht unterschiedlich gerendert werden; für typische Größen 5-40px ist die Ausgabe visuell identisch.
Sollte ich OKLCH oder HSL bevorzugen, wenn ich die Schattenfarben ableite?
OKLCH (CSS Color Level 4), wenn du gesättigte oder ungewöhnliche Grundfarben verwenden planst. Seine Helligkeitsachse ist perzeptuell gleichmäßig - dank Bjorn Ottosson's Arbeit von 2020, die die Oklab- Familie einführte - sodass eine +10-Helligkeitsverschiebung und eine -10-Helligkeitsverschiebung Schatten erzeugen, die gleich weit von der Basis entfernt wirken. Die HSL-Helligkeit ist mathematisch symmetrisch, aber perzeptuell verzerrt, weshalb Neumorphismus, der auf HSL mit gesättigten Grünen oder Orangen aufgebaut ist, oft schief wirkt.
Verwandte Tools
- CSS-Box-Shadow-Generator
CSS-Box-Shadows visuell erstellen. CSS-box-shadow-Generator, Schatten-Maker und Box-Shadow-Builder mit Live-Vorschau, Mehr-Ebenen-Support und Material-Elevation-Voreinstellungen.
- Glassmorphismus-Generator
Mattglas-CSS-Effekte mit Backdrop-Blur erstellen. Glassmorphismus-Generator und Glass-Effekt-CSS-Builder in einem.
- Textschatten-Generator
CSS-Textschatten mit visuellem Editor und Voreinstellungen erstellen. Fungiert auch als CSS-Schriftschatten-Generator.
- Verlauf-Generator
Erstelle CSS-Linear- und Radialverläufe mit einem visuellen Editor.
- Ästhetischer Text-Generator
Text in Vaporwave-, Auf-dem-Kopf-, Small-Caps-, Fett-, Kursiv-, Durchgestrichen-, Blase- und Quadrat-Unicode-Stile umwandeln.
- Farbpaletten-Generator
Harmonische Farbpaletten, Tailwind-artige 50-900-Skalen und Design-System-Tokens aus jeder Grundfarbe als Hex erstellen. Auch Farbpalette Generator online.
Mehr CSS & Design
Aspect Ratio Calculator
Calculate and visualize aspect ratios for any dimensions.
Open toolBlob Shape Generator
Generate organic blob shapes as SVG.
Open toolBorder Radius Generator
Create CSS border-radius with a visual corner editor.
Open toolCSS Box Shadow Generator
Create CSS box shadows with a visual editor. CSS box-shadow generator, shadow maker and box-shadow builder with live preview, multi-layer support and Material elevation presets.
Open toolColor Palette Generator
Generate harmonious color palettes, Tailwind-style 50-900 scales and design-system tokens from any base hex color. Also a hex color palette generator (Farbpalette Generator auf Deutsch).
Open toolColor Picker
Pick colors visually and get HEX, RGB, and HSL values.
Open tool