kulturbanause Blog

Responsive Design, WordPress, Konzeption, HTML, CSS, JS & UX/UI …

text-overflow & line-clamp – Text mit CSS kürzen

Um robuste Layouts zu erstellen, kann es notwendig sein, Texte, unabhängig von ihrer Zeichenanzahl, auf eine bestimmte maximale Länge zu kürzen. Vor allem, wenn wir Layouts für Websites entwickeln, die via CMS von einem Redaktionsteam gepflegt werden, müssen wir uns darauf verlassen können, dass die Layouts möglichst unabhängig von ihren Inhalten ihre Symmetrie und Ästhetik bewahren. Dafür gibt es verschiedenste Herangehensweisen. Die wahrscheinlich einfachste ist mit CSS text-overflow und line-clamp.

Workshops & Schulungen von kulturbanause

Intensive Trainings mit hohem Praxisbezug.

Online-Schulungen (remote per Video)

Inhouse-Schulungen

Einzeiligen Text mit CSS text-overflow kürzen

Ausgangssituation: In der Breite beschränkter Container mit zu langem Text. Der Text bricht in eine zweite Zeile um.

Zunächst müssen wir verhindern, dass der Text in eine zweite Zeile umbricht. Das erreichen wir mit white-space: nowrap.

Mit der CSS-Angabe white-space: nowrap; wird verhindert, dass der Text umbricht.

Zweite Voraussetzung ist die Anweisung overflow: hidden, damit der Text nicht über seinen Container hinausläuft.

Mit der Anweisung overflow: hidden; wird überlaufender Text abgeschnitten.

Jetzt können wir text-overflow: ellipsis verwenden, um den Text nicht einfach nur am rechten Containerrand abzuschneiden, sondern eine Ellipse zu erzeugen.

CSS text-oberflow: ellispis;

Der vollständige CSS-Code sieht so aus:

p {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

Auslassungszeichen

Standardmäßig werden ans Ende der Zeile die sogenannten Auslassungspunkte gesetzt. Diese bestehen aus einem einzelnen typografischen Zeichen, auch Dreipunkt genannt. Für den deutschen Sprachraum ist das auch das korrekte Zeichen. In Spanien und Frankreich werden als Auslassungspunkte allerdings drei einzelne Punkte verwendet.

Derzeit kann dies leider nur in Firefox angepasst werden.

text-overflow: '...';

Dadurch ist sogar so etwas möglich:

text-overflow: ' ...weiterlesen';

Mozilla zeigt in der Dokumentation für Entwickler noch weitere experimentelle Funktionen, die eine Aussicht darauf geben, was mit text-overflow in Zukunft möglich sein kann.

Mehrzeiligen Text mit CSS line-clamp kürzen

Mit CSS line-clamp können wir die maximale Anzahl an Zeilen festlegen, in die ein Text umbrechen darf. Hier wieder die Ausgangssituation:

Ausgangssituation: In der Breite beschränkter Container mit vier Zeilen Text

Voraussetzung ist die Kombination mit CSS display: -webkit-inline-box oder display: -webkit-box, sowie -webkit-box-orient: vertical und overflow: hidden.

Mit dem nachfolgenden CSS-Code können wir nun ganz einfach die maximale Zeilenanzahl auf drei beschränken. Am Ende der dritten Zeile wird außerdem automatisch eine Ellipse hinzufügen. Das Browser-Präfix -webkit- ist derzeit in allen Browsern notwendig.

p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
CSS -webkit-line-clamp: 3;

Jetzt bist du gefragt!

Hast du Anregungen, Ergänzungen, einen Fehler gefunden oder ist dieser Beitrag nicht mehr aktuell? Dann freuen wir uns auf deinen Kommentar.

Du kannst diesen Beitrag natürlich auch weiterempfehlen. Wir sind dir für jede Unterstützung dankbar!

Unterstützung bei Responsive Design-Projekten

Unsere Agentur ist auf responsive Design spezialisiert. Wir realisieren u.a. maßgeschneiderte Websites und führen Schulungen durch. Wenn du Unterstützung bei der Planung, Gestaltung und Entwicklung einer Website im Responsive Design benötigst, helfen wir gerne weiter.
Responsive Webdesign-Leistungsangebot →

Das könnte dich auch interessieren

Kommentar verfassen

Dieser Blog lebt vom Feedback der Besucher! Also los, mach mit!
Bitte habe Verständnis dafür, dass Kommentare die mit dem Inhalt dieses Beitrags nichts zu tun haben, gelöscht werden.