text-wrap CSS-Eigenschaft
Baseline
2024
*
Neu verfügbar
Seit März 2024 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Die text-wrap CSS Shorthand Eigenschaft steuert, wie Text innerhalb eines Elements umbrochen wird. Die verschiedenen Werte bieten:
- Typografische Verbesserungen, zum Beispiel ausgewogenere Zeilenlängen über gebrochene Überschriften hinweg.
- Eine Möglichkeit, den Textumbruch vollständig zu deaktivieren.
Probieren Sie es aus
text-wrap: wrap;
text-wrap: nowrap;
text-wrap: balance;
text-wrap: pretty;
text-wrap: stable;
<section class="default-example" id="default-example">
<div class="whole-content-wrapper">
<p>Edit the text in the box:</p>
<div class="transition-all" id="example-element">
<p contenteditable>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatem aut
cum eum id quos est.
</p>
</div>
</div>
</section>
.whole-content-wrapper {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
}
#example-element {
border: 1px solid #c5c5c5;
width: 250px;
}
Zusammengehörige Eigenschaften
Diese Eigenschaft ist eine Kurzform für die folgenden CSS-Eigenschaften:
Syntax
/* Keyword values */
text-wrap: wrap;
text-wrap: nowrap;
text-wrap: balance;
text-wrap: pretty;
text-wrap: stable;
/* Global values */
text-wrap: inherit;
text-wrap: initial;
text-wrap: revert;
text-wrap: revert-layer;
text-wrap: unset;
Werte
Diese Eigenschaft wird mit einem der folgenden Schlüsselwortwerte angegeben:
wrap-
Text wird bei passenden Zeichen (zum Beispiel Leerzeichen in Sprachen wie Englisch, die Leerzeichentrennungen verwenden) über Zeilen umgebrochen, um Überläufe zu minimieren. Dies ist der Standardwert.
nowrap-
Text wird nicht über Zeilen umgebrochen. Er wird das enthaltende Element überlaufen, anstatt auf eine neue Zeile zu brechen.
balance-
Text wird so umbrochen, dass die Anzahl der Zeichen in jeder Zeile möglichst ausgeglichen ist, was die Layoutqualität und Lesbarkeit verbessert. Da das Zählen von Zeichen und das Ausgleichen über mehrere Zeilen rechnerisch aufwendig ist, wird dieser Wert nur für Textabschnitte unterstützt, die eine begrenzte Anzahl von Zeilen umfassen (sechs oder weniger für Chromium und zehn oder weniger für Firefox).
pretty-
Führt zu demselben Verhalten wie
wrap, außer dass der Benutzeragent einen langsameren Algorithmus verwendet, der eine bessere Layoutqualität gegenüber Geschwindigkeit bevorzugt. Dies ist für Fließtext gedacht, bei dem gute Typografie wichtiger als Leistung ist (zum Beispiel wenn die Anzahl der Waisen minimiert werden soll). stable-
Führt zu demselben Verhalten wie
wrap, außer dass während der Benutzer den Inhalt bearbeitet, die Zeilen vor den bearbeiteten Zeilen statisch bleiben, anstatt dass der gesamte Textblock neu umbrochen wird.
Beschreibung
Es gibt zwei Arten, wie Text über Zeilen innerhalb eines Inhaltsblocks wie einem Absatz (<p>) oder Überschriften (<h1>–<h6>) fließen kann. Dies sind erzwungene Zeilenumbrüche, die vom Benutzer gesteuert werden, und weiche Zeilenumbrüche, die vom Browser gesteuert werden. Die text-wrap-Eigenschaft kann verwendet werden, um dem Browser vorzugeben, wie die weichen Zeilenumbrüche zu steuern sind.
Der gewählte Wert für text-wrap hängt davon ab, wie viele Textzeilen Sie erwarten, ob der Text contenteditable ist und ob Sie das Erscheinungsbild oder die Leistung priorisieren müssen.
Wenn der gestaltete Inhalt auf eine kurze Anzahl von Zeilen beschränkt ist, wie z. B. Überschriften, Bildunterschriften und Blockzitate, kann text-wrap: balance hinzugefügt werden, um die Anzahl der Zeichen in jeder Zeile auszugleichen und die Layoutqualität und Lesbarkeit zu verbessern. Da Browser die Anzahl der betroffenen Zeilen durch diese Eigenschaft begrenzen, ist der Leistungseinfluss dieses Wertes vernachlässigbar.
Für längere Textabschnitte kann text-wrap: pretty verwendet werden. Beachten Sie, dass pretty eine negative Auswirkung auf die Leistung hat, daher sollte es nur für längere Textblöcke verwendet werden, wenn das Layout wichtiger als die Geschwindigkeit ist.
Der stable-Wert verbessert die Benutzererfahrung, wenn er auf Inhalt angewendet wird, der contenteditable ist. Dieser Wert stellt sicher, dass, während der Benutzer Text bearbeitet, die vorhergehenden Zeilen im bearbeiteten Bereich stabil bleiben.
Formale Definition
| Anfangswert | wrap |
|---|---|
| Anwendbar auf | text and block containers |
| Vererbt | Ja |
| Prozentwerte | wie die jeweiligen Kurzschreibweisen:
|
| Berechneter Wert | wie die jeweiligen Kurzschreibweisen:
|
| Animationstyp | wie die jeweiligen Kurzschreibweisen:
|
Formale Syntax
text-wrap =
<'text-wrap-mode'> ||
<'text-wrap-style'>
<text-wrap-mode> =
wrap |
nowrap
<text-wrap-style> =
auto |
balance |
stable |
pretty |
avoid-short-last-line
Beispiele
>Vergleich der grundlegenden Textumbruchswerte
HTML
<h2 class="wrap" contenteditable="true">
The default behavior; the text in the heading wraps "normally"
</h2>
<h2 class="nowrap" contenteditable="true">
In this case the text in the heading doesn't wrap, and overflows the container
</h2>
<h2 class="balance" contenteditable="true">
In this case the text in the heading is nicely balanced across lines
</h2>
CSS
.wrap {
text-wrap: wrap;
}
.nowrap {
text-wrap: nowrap;
}
.balance {
text-wrap: balance;
}
h2 {
font-size: 2rem;
font-family: sans-serif;
}
Ergebnis
Der Text im Beispiel ist bearbeitbar. Ändern Sie den Text und fügen Sie lange Wörter hinzu, um zu sehen, wie die unterschiedlichen Zeilen- und Wortlängen den Umbruch beeinflussen.
Spezifikationen
| Spezifikation |
|---|
| CSS Text Module Level 4> # text-wrap-shorthand> |
Browser-Kompatibilität
Siehe auch
white-spacewhite-space-collapse- CSS Textmodul
- CSS
text-wrap: balanceauf developer.chrome.com (2023) - CSS
text-wrap: prettyauf developer.chrome.com (2023) - Balancing Japanese and Korean typography von Kelly Choyce-Dwan (2025)