Textmasken mit CSS erstellen
In diesem Beitrag erklären wir euch, wir mit Hilfe von CSS Blend Modes Textmasken erstellt werden können.

Textmasken erfreuen sich im Grafik-Design – insbesondere im Print-Design – größter Beliebtheit. Leider war es mit Webtechnologien lange Zeit kaum möglich eine Textmaske herzustellen, bei der der Text als Reintext im HTML-Code steht. Aber gerade das ist wichtig, damit der Text geändert und übersetzt, sowie von Suchmaschinen und Screenreadern ausgelesen werden kann. In diesem Beitrag zeigen wir, wie ihr mit Hilfe von CSS Blend Modes eine semantisch korrekte Textmaske erstellt.
Schulungen von kulturbanause
Intensive Trainings mit hohem Praxisbezug. Z. B.: Coding for Designers oder Seminar: CSS für Webanwendungen
Das Grundprinzip verstehen
Die Textmaske besteht aus zwei Elementen: Dem Text selbst und einem Element, dass diesen Text überlagert und den Inhalt der Maske bereitstellt. Im Idealfall ist dieses Überlagerungselement ein CSS Pseudoelement.
Mit Hilfe eines CSS Blend Modes wird nun das Element mit dem Text verrechnet. Einen detaillierten Beitrag zu CSS Blend Modes findet ihr hier. Wenn der Hintergrund der Textmaske weiß sein soll, dann benötigt ihr schwarzen Text und den Blendmodus »screen« (In Photoshop »Negativ Multiplizieren«). Wenn der Hintergrund der Textmaske schwarz ist, benötigt ihr weißen Text und den Blendmodus »multiply« (In Photoshop »Multiplizieren«).

Text mit Farbverlauf weißem Grund
Der folgende CSS-Code ist notwendig, um eine Textmaske auf weißem Grund zu erzeugen. Der Blendmodus »screen« sorgt dafür, dass alle Pixel des Überlagerungselements sichtbar sind, die vor schwarzen Pixeln platziert wurden. Alles was vor weißen Pixeln positioniert wurde ist unsichtbar. Graue Pixel sorgen für Halbtransparenzen.
<h1>kulturbanause.de</h1>
h1 {
position: relative;
color:black;
}
h1:before {
position: absolute;
top:0;
left:0;
right:0;
bottom:0;
content: '';
background:linear-gradient(45deg, gold, deeppink);
mix-blend-mode:screen;
}
Text mit Farbverlauf auf schwarzem Grund
Der folgende CSS-Code erzeugt eine Textmaske auf schwarzem Grund. Hier ist es genau umgekehrt. Der Modus »multiply« sorgt dafür, dass nur die Pixel des Überlagerungselements sichtbar sind, die vor weißen Pixeln positioniert werden. Alles was vor schwarz steht ist unsichtbar.
<h1>kulturbanause.de</h1>
html {
background:black;
}
h1 {
position: relative;
color:white;
}
h1:before {
position: absolute; top:0; left:0; right:0; bottom:0; content: '';
background:linear-gradient(45deg, gold, deeppink);
mix-blend-mode:multiply;
}
Textmaske aus Bild
Die bisherigen Beispiele arbeiten mit einem Verlauf. Selbstverständlich kann auch ein Bild oder ein Video innerhalb des Textes dargestellt werden.
Feedback & Ergänzungen – 7 Kommentare
Kommentar zu dieser Seite
Website-Projekte mit kulturbanause
Wir wissen wovon wir reden. Wir realisieren komplette Projekte oder unterstützen punktuell in den Bereichen Design, Development, Strategy und Content.
Übersicht Kompetenzen →Schulungen von kulturbanause
Wir bieten Seminare und Workshops zu den Themen Konzept, Design und Development. Immer up-to-date, praxisnah, kurzweilig und mit dem notwendigen Blick über den Tellerrand.
Übersicht Schulungsthemen →
Gibt es auch die Möglichkeit das mit anderen Hintergrundfarben zu machen? Oder nur s/w ?
#373f5b wäre mein Hintergrund und ich habe es mit verschiedenen Farben versucht. Geht das irgendwie?
Hallo,
was denkt ihr, ab welcher Schriftgröße macht es überhaupt Sinn ein Bild als Textmaske zu verwenden?
Also ab welcher Schriftgröße geht ihr davon aus, dass das Motiv wenigstens in Teilen zu erkennen ist?
Grüße,
Lisa
Hallo Lisa, das kann man pauschal schwer beantworten. Verläufe gehören ja technisch gesehen auch schon dazu. Aber so wie es hier unten bei POTD umgesetzt ist, finde ich es auch in kleinen Schriftgrößen sehr ansprechend.
Hallo, Jonas.
Als Redakteur einer Vereinsseite habe ich eine etwas komplexere Variante des Farbverlaufs auf einigen Seiten von http://www.esperanto-nb.de plaziert. Eine Beschreibung dazu gibt es dort auch, und zwar unter http://esperanto-nb.de/tekniko/technik-gradient.html ganz unten. Weiter oben stehen die älteren Versionen.
Da einige Formatierungen nur zusammen mit mix-blend-mode sinnvoll sind, habe ich das ganze in @supports gepackt.
Gruß
René
Super Artikel!
Schade dass der IE das nicht zu 100% supported. Was würdest du für einen Fallback für IE empfehlen?
Hallo Sahin, ich würde wahrscheinlich die Maske weglassen und stattdessen den Text einfärben.