Die Kurzfassung
- Um einen CSS-Verlauf transparent zu machen, nutze eine Farbe mit Alpha null als einen der Stopps, etwa transparent oder rgb(124 58 237 / 0).
- Moderne Browser interpolieren Verlaufsfarben mit vormultipliziertem Alpha, daher erzeugt das Ausblenden einer Farbe zum Schlüsselwort transparent kein graues Band mehr.
- Ein Hintergrundverlauf kann nur den Hintergrund ausblenden; um den eigentlichen Inhalt eines Elements auszublenden, nutze mask-image mit einem Verlauf.
- Ein Scrim mit mehreren weich verteilten Stopps wirkt glatter als ein Übergang mit zwei Stopps, der dort eine sichtbare Kante zeigt, wo das Abdunkeln endet.
- Ein radialer Verlauf, der in der Mitte transparent und außen dunkel ist, ergibt ein Spotlight, das die Aufmerksamkeit auf einen Bereich lenkt.
Auf dieser Seite
Um einen CSS-Verlauf transparent zu machen, gib einem seiner Stopps eine Farbe mit Alpha null: linear-gradient(to bottom, #7c3aed, transparent) lässt Violett ins Nichts auslaufen, sodass alles darunter durchscheint. Dieselbe Idee nutzt du für Ausblendungen am Textende, dunkle Scrims hinter Bildunterschriften und farbige Overlays auf Fotos. Um den Inhalt eines Elements statt seines Hintergrunds auszublenden, nutze stattdessen mask-image mit einem Verlauf.
Wege, eine transparente Farbe zu schreiben
transparentBedeutet
Nutze es, wenn
rgb(124 58 237 / 0)Bedeutet
Nutze es, wenn
rgb(124 58 237 / 0.4)Bedeutet
Nutze es, wenn
#7c3aed66Bedeutet
Nutze es, wenn
color-mix(in srgb, var(--brand) 40%, transparent)Bedeutet
Nutze es, wenn
color-mix() ist die einzige, die bei einer Farbe funktioniert, die du nur als Variable kennst; siehe color-mix() in CSS.Warum Ausblendungen früher grau wurden
Das Schlüsselwort transparent ist Schwarz mit Alpha null. Frühe Browser mischten die Rot-, Grün- und Blaukanäle und den Alphakanal getrennt, sodass ein Übergang von Weiß zu transparent unterwegs durch halbtransparentes Grau lief. Deshalb bestehen ältere Tutorials auf rgba(255, 255, 255, 0).
Die Spezifikation verlangt jetzt vormultipliziertes Alpha: Jede Farbe wird vor dem Mischen nach ihrer Deckkraft gewichtet, sodass ein völlig transparenter Stopp überhaupt keine Farbe beiträgt. Jeder aktuelle Browser macht das so. Die passende Farbe mit Alpha null zu schreiben ist trotzdem eine harmlose Gewohnheit und hält dich in E-Mail-Clients und alten WebViews auf der sicheren Seite.
Altes Verhalten
- Weiß zu
transparentsackt durch Grau - Farbkanäle ohne Rücksicht auf Deckkraft gemischt
- Workaround: die Farbe mit Alpha null wiederholen
Aktuelle Browser
- Weiß zu
transparentbleibt beim Ausblenden weiß - Vormultipliziertes Alpha, wie die Spezifikation verlangt
- Beide Formen funktionieren; die explizite ist portabler
Wo die Ausblendung endet, zählt so viel wie ihre Farben. Ein Stopp bei 70 Prozent beendet die Ausblendung früh und lässt den Rest der Box völlig klar, ideal für eine Tönung, die nur eine Kante berühren soll. Zwei Stopps an derselben Position ergeben einen harten Schnitt von Farbe zu nichts, nützlich für halb gefüllte Balken und geteilte Hintergründe. Stopp-Positionen erklärt CSS linear-gradient.
Inhalte mit mask-image ausblenden
Ein Hintergrundverlauf liegt hinter dem Inhalt und kann daher keinen Text, keine Bilder und keine scrollende Liste ausblenden. Eine Maske kann das. Mit mask-image halten deckende Teile des Verlaufs das Element sichtbar, transparente Teile verbergen es. Die Farbe der Maske ist egal, nur ihr Alpha zählt.
/* Fade the last lines of a teaser paragraph */
.teaser {
max-height: 9rem;
overflow: hidden;
mask-image: linear-gradient(to bottom, #000 60%, transparent);
}
/* Soft edges on a horizontally scrolling row */
.carousel {
overflow-x: auto;
mask-image: linear-gradient(to right, transparent, #000 48px, #000 calc(100% - 48px), transparent);
}
/* Fade a photo into the page on any background colour */
.hero-photo {
mask-image: linear-gradient(to bottom, #000 50%, transparent 95%);
}mask-image ohne Präfix funktioniert in aktuellen Browsern; ergänze -webkit-mask-image für ältere Safari-Versionen.Die alte Alternative war ein weißer Verlauf über dem Inhalt. Er bricht, sobald die Seite nicht weiß ist, etwa im Dark Mode, und er blockiert Klicks, wenn du pointer-events: none vergisst. Eine Maske hat keines dieser Probleme.
Scrims: transparente Verläufe für Text
Ein Scrim dunkelt einen Teil eines Bildes ab, damit Text darauf lesbar ist, und läuft ins völlig Transparente aus, damit der Rest des Fotos hell bleibt. Ein Übergang mit zwei Stopps funktioniert, aber seine gerade Rampe hinterlässt eine sichtbare Linie, wo das Abdunkeln endet. Mehr Stopps, weich auslaufend verteilt, verbergen diese Kante.
linear-gradient(to top, rgb(2 6 23 / 0.8) 0%, rgb(2 6 23 / 0.62) 15%, rgb(2 6 23 / 0.42) 30%, rgb(2 6 23 / 0.24) 48%, rgb(2 6 23 / 0.1) 66%, rgb(2 6 23 / 0.03) 82%, rgb(2 6 23 / 0) 100%).card {
background-image:
linear-gradient(to top,
rgb(2 6 23 / 0.8) 0%, rgb(2 6 23 / 0.62) 15%, rgb(2 6 23 / 0.42) 30%,
rgb(2 6 23 / 0.24) 48%, rgb(2 6 23 / 0.1) 66%, rgb(2 6 23 / 0.03) 82%,
rgb(2 6 23 / 0) 100%),
url("/images/coast.jpg");
background-size: cover;
color: #f8fafc;
}Töne den Scrim mit einer tiefen Version der Fotofarbe statt reinem Schwarz, und er wirkt wie ein Teil des Bildes. Auf einem warmen Sonnenuntergangsfoto sinkt ein tiefes Braun wie rgb(41 20 8 / 0.75) ins Bild ein, wo Schwarz wie ein aufgelegter Filter aussähe. Verlaufs-Overlays in CSS behandelt Farbwaschungen und Blend Modes, und Text über Bildern die Platzierung.
Transparente Löcher und Spotlights
Dreh die Idee um: in der Mitte transparent, außen dunkel. Ein radialer Verlauf über einer Seite oder einem Bild lässt einen Bereich beleuchtet und dämpft alles andere leise, passend für Onboarding-Tipps, Produktnahaufnahmen und Folien.
.spotlight::after {
content: "";
position: absolute;
inset: 0;
pointer-events: none;
background: radial-gradient(
circle at var(--x, 50%) var(--y, 40%),
transparent 0 140px,
rgb(2 6 23 / 0.72) 220px
);
}--x und --y per JavaScript, um das Spotlight zu bewegen. Der Übergang von 80 Pixeln zwischen den Stopps hält die Kante weich.Ohne jede Formung konkurrieren die Worte mit dem hellsten Teil des Hintergrunds.
Der Hintergrund beruhigt sich hinter den Worten, die Aufgabe, die auf einer Website ein Scrim übernimmt.
Für Social Posts und Druck musst du Scrims selten von Hand bauen. In Gradiently macht der Mark selbst Platz für deine Worte und vertieft oder hebt die Farben nahe den Buchstaben, ohne Overlay-Ebene, die du für jede Größe abstimmen musst.
Häufige Fragen
Wie lasse ich einen CSS-Verlauf ins Transparente auslaufen?
Nutze eine Farbe mit Alpha null als letzten Stopp: linear-gradient(#7c3aed, transparent) oder, explizit, linear-gradient(#7c3aed, rgb(124 58 237 / 0)).
Warum sieht mein Verlauf zu transparent grau aus?
Ältere Browser mischen ohne vormultipliziertes Alpha, daher vergraut transparent (transparentes Schwarz) die Mitte. Lass stattdessen zu deiner Farbe mit Alpha null auslaufen.
Wie blende ich Text oder ein Bild mit CSS aus?
Nutze mask-image mit einem Verlauf, etwa mask-image: linear-gradient(#000 60%, transparent). Das Element blendet auf jeder Hintergrundfarbe aus.
Was ist ein Scrim in CSS?
Ein Verlauf, der einen Teil eines Bildes hinter Text abdunkelt und sonst ins Transparente ausläuft, damit der Text lesbar und das Bild hell bleibt.
Kann ein CSS-Verlauf ein transparentes Loch haben?
Ja. Ein radialer Verlauf, der in der Mitte transparent und weiter außen dunkel ist, lässt ein klares Spotlight über allem, was darunter liegt.
Geschrieben von Gradiently
Das Team hinter Gradiently, einem Designtool rund um Marks: lebendige Farbverläufe, durch die alles, was du gestaltest, nach dir aussieht.
Unser Profil ansehen