text-overflow & hyphens

Zuletzt aktualisiert am 15. Februar 2026

text-overflow bestimmt, wie überlaufender Text in einem Element dargestellt wird, zum Beispiel mit drei Punkten (ellipsis). hyphens steuert die automatische Silbentrennung, die besonders für deutsche Texte mit ihren langen zusammengesetzten Wörtern wertvoll ist. Beide Eigenschaften verbessern die Textdarstellung in engen Layouts. text-overflow braucht immer die Kombination mit overflow: hidden und white-space: nowrap, während hyphens die Sprachangabe im HTML (lang="de") benötigt.

Syntax
text-overflow: clip | ellipsis
Initialwert
clip
Vererbt
Nein
Animierbar
Nein

Grundlagen

text-overflow kommt erst zum Einsatz, wenn Text tatsächlich überläuft. Dafür müssen zwei Bedingungen erfüllt sein: Der Container braucht overflow: hidden (oder scroll), und der Text darf nicht umbrechen (white-space: nowrap). Erst dann bestimmt text-overflow, ob der abgeschnittene Text mit einem visuellen Hinweis (ellipsis) oder hart abgeschnitten (clip) endet. Dieses Zusammenspiel von drei Eigenschaften wird als “Ellipsis-Trio” bezeichnet.

Für mehrzeiligen Text gibt es kein natives CSS-Feature in der Spezifikation, aber -webkit-line-clamp hat sich als De-facto-Standard etabliert. Zusammen mit display: -webkit-box und -webkit-box-orient: vertical kannst du Text nach einer bestimmten Anzahl von Zeilen mit Ellipsis abschneiden. Trotz des Vendor-Prefix funktioniert es in allen modernen Browsern.

hyphens aktiviert die automatische Silbentrennung basierend auf den Trennregeln der jeweiligen Sprache. Dafür muss das lang-Attribut im HTML gesetzt sein (lang="de" für Deutsch). Die Silbentrennung ist besonders bei schmalem Blocksatz wichtig, weil sie die großen Lücken zwischen Wörtern reduziert, die bei text-align: justify entstehen.

Syntax & Werte

text-overflow

Wert Beschreibung Beispiel
clip Text wird am Rand des Containers hart abgeschnitten. Kein visueller Hinweis. text-overflow: clip
ellipsis Abgeschnittener Text endet mit drei Punkten (…). text-overflow: ellipsis
inherit Erbt den Wert explizit vom Elternelement. text-overflow: inherit

hyphens

Wert Beschreibung Beispiel
none Keine Silbentrennung, auch nicht an manuellen Trennstellen (­). hyphens: none
manual Silbentrennung nur an manuellen Trennstellen (­ oder Bindestrich). hyphens: manual
auto Automatische Silbentrennung basierend auf der Sprache (lang-Attribut nötig). hyphens: auto
inherit Erbt den Wert explizit vom Elternelement. hyphens: inherit

Beispiele

Das Ellipsis-Trio

Das klassische Pattern für einzeiligen Text mit drei Punkten. Alle drei Eigenschaften müssen zusammen gesetzt werden, sonst funktioniert es nicht.

Das Ellipsis-Trio
/* Alle drei Eigenschaften sind nötig */
.truncate {
  white-space: nowrap;      /* Umbruch verhindern */
  overflow: hidden;          /* Überlauf verstecken */
  text-overflow: ellipsis;   /* Drei Punkte anzeigen */
}

Mehrzeiliges Ellipsis mit line-clamp

Mit -webkit-line-clamp kannst du Text nach einer bestimmten Anzahl von Zeilen abschneiden. Das ist ideal für Artikelvorschauen, Produktbeschreibungen oder Kommentare.

Mehrzeiliges Ellipsis mit line-clamp
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;      /* Nach 3 Zeilen abschneiden */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

Automatische Silbentrennung

hyphens: auto trennt Wörter automatisch nach den Regeln der jeweiligen Sprache. Für Deutsch ist das besonders nützlich, weil zusammengesetzte Wörter sehr lang werden können. Wichtig: Das lang-Attribut muss im HTML gesetzt sein.

Automatische Silbentrennung für deutsche Texte
.text-de {
  hyphens: auto;
  -webkit-hyphens: auto; /* Safari */
  text-align: justify;   /* Blocksatz profitiert am meisten */
}
<p lang="de">Langer deutscher Text...</p>

Manuelle Trennstellen mit Soft Hyphens

Mit dem Soft Hyphen (&shy;) kannst du exakte Trennstellen im HTML definieren. Der Trennstrich erscheint nur, wenn der Browser an dieser Stelle tatsächlich umbricht. Das ist nützlich für Wörter, bei denen die automatische Trennung versagt.

Manuelle Trennstellen mit Soft Hyphen
<!-- Soft Hyphen: Trennstrich nur bei Bedarf -->
<p>Daten&shy;schutz&shy;grund&shy;ver&shy;ordnung</p>
p {
  hyphens: manual; /* Standard: nur an &shy; trennen */
}

Barrierefreiheit

Abgeschnittener Text mit text-overflow: ellipsis ist für Screenreader trotzdem vollständig zugänglich. Die drei Punkte sind nur visuell, der komplette Text wird vorgelesen. Stelle aber sicher, dass sehende Nutzer den vollständigen Text ebenfalls erreichen können, zum Beispiel durch einen Tooltip (title-Attribut), einen Klick auf das Element oder eine Hover-Erweiterung.

Silbentrennung mit hyphens: auto verbessert die Lesbarkeit für alle Nutzer, besonders bei schmalem Blocksatz. Screenreader ignorieren die Trennstriche und lesen das Wort als Ganzes vor. Das ist korrekt und erwartet. Manuelle Soft Hyphens (&shy;) werden ebenfalls von Screenreadern ignoriert.

Bei mehrzeiligem Ellipsis mit -webkit-line-clamp wird der versteckte Text von Screenreadern vorgelesen. Das kann zu einer Diskrepanz zwischen dem führen, was sehende Nutzer sehen, und dem, was Screenreader-Nutzer hören. Überlege, ob du ein aria-label mit einer kurzen Zusammenfassung ergänzen möchtest, oder biete einen “Mehr lesen”-Link an.

Häufige Fehler

  • Ellipsis ohne overflow: hidden: text-overflow: ellipsis funktioniert nur zusammen mit overflow: hidden und white-space: nowrap. Fehlt eine der drei Eigenschaften, wird kein Ellipsis angezeigt.
  • hyphens: auto ohne lang-Attribut: Die automatische Silbentrennung braucht die Sprachangabe im HTML (lang="de"). Ohne lang kann der Browser die Trennregeln nicht anwenden.
  • Ellipsis auf Block-Elemente ohne Breitenbegrenzung: text-overflow: ellipsis braucht einen Container mit fester oder begrenzter Breite. Bei width: auto gibt es keinen Überlauf und damit kein Ellipsis.
  • line-clamp ohne -webkit-box: -webkit-line-clamp funktioniert nur zusammen mit display: -webkit-box und -webkit-box-orient: vertical. Alle drei Eigenschaften müssen gesetzt werden.
  • Vendor-Prefix für hyphens vergessen: Safari braucht -webkit-hyphens: auto zusätzlich zu hyphens: auto. Ohne den Prefix funktioniert die Silbentrennung in Safari nicht.
  • hyphens: none mit ­ verwechseln: hyphens: none unterdrückt alle Silbentrennungen, auch manuelle &shy;-Trennstellen. Für manuelle Trennung brauchst du hyphens: manual (den Standardwert).

Browser-Kompatibilität

text-overflow wird von allen Browsern vollständig unterstützt. hyphens: auto funktioniert in allen modernen Browsern, benötigt in Safari aber den -webkit-Prefix. -webkit-line-clamp wird trotz Vendor-Prefix von allen Browsern unterstützt.

ClientUnterstützungHinweise
ChromeKomplett
FirefoxKomplett
SafariKomplett-webkit-hyphens nötig für Silbentrennung
EdgeKomplett
OperaKomplett

Email-Kompatibilität

text-overflow: ellipsis funktioniert in den meisten Email-Clients zusammen mit den nötigen Begleit-Eigenschaften. hyphens wird in Emails kaum unterstützt. -webkit-line-clamp ist in Emails nicht verwendbar.

ClientUnterstützungHinweise
Apple MailKomplett
GmailTeilweisetext-overflow: ellipsis funktioniert, hyphens wird nicht unterstützt
OutlookTeilweisetext-overflow wird teilweise unterstützt, hyphens und line-clamp nicht
ThunderbirdKomplett
Yahoo MailTeilweisetext-overflow funktioniert, hyphens nicht zuverlässig

Verwandte Eigenschaften

Bleib auf dem Laufenden

Erhalte neue Inhalte direkt in dein Postfach

Mit der Anmeldung akzeptierst du unsere Datenschutzerklärung. Du kannst dich jederzeit über den Link in den E-Mails wieder abmelden.

Was erwartet dich?

Neue Artikel & Videos

Wenn ich was Neues veröffentliche, erfährst du's hier zuerst.

Plattform & Kurs-Updates

Neue Kurse, Referenz-Updates und gelegentlich Sonderpreise zum Launch.

Einmal die Woche in deinem Postfach

Kurz, auf den Punkt, kein Spam.