white-space
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Probieren Sie es aus
white-space: normal;
white-space: pre;
white-space: pre-wrap;
white-space: pre-line;
white-space: wrap;
white-space: collapse;
white-space: preserve nowrap;
<section class="default-example" id="default-example">
<div id="example-element">
<p>
But ere she from the church-door stepped She smiled and told us why: 'It
was a wicked woman's curse,' Quoth she, 'and what care I?' She smiled, and
smiled, and passed it off Ere from the door she stept—
</p>
</div>
</section>
#example-element {
width: 16rem;
}
#example-element p {
border: 1px solid #c5c5c5;
padding: 0.75rem;
text-align: left;
}
Die Eigenschaft spezifiziert zwei Dinge:
- Ob und wie Leerraum zusammengefügt wird.
- Ob und wie Zeilen umbrochen werden.
Hinweis:
Um Wörter innerhalb der Wörter umbrechen zu lassen, verwenden Sie stattdessen overflow-wrap
, word-break
oder hyphens
.
Zusammengehörige Eigenschaften
Diese Eigenschaft ist eine Kurzform für die folgenden CSS-Eigenschaften:
Hinweis:
Die Spezifikation definiert eine dritte zusammengehörige Eigenschaft: white-space-trim
, die noch in keinem Browser implementiert ist.
Syntax
/* Single keyword values */
white-space: normal;
white-space: pre;
white-space: pre-wrap;
white-space: pre-line;
/* white-space-collapse and text-wrap-mode shorthand values */
white-space: nowrap;
white-space: wrap;
white-space: break-spaces;
white-space: collapse;
white-space: preserve nowrap;
/* Global values */
white-space: inherit;
white-space: initial;
white-space: revert;
white-space: revert-layer;
white-space: unset;
Werte
Die Werte der white-space
-Eigenschaft können als ein oder zwei Schlüsselwörter angegeben werden, die die Werte für die Eigenschaften white-space-collapse
und text-wrap-mode
repräsentieren, oder die folgenden speziellen Schlüsselwörter:
normal
-
Abfolgen von Leerraum werden zusammengefügt. Zeilenumbrüche im Quelltext werden wie andere Leerzeichen behandelt. Zeilen werden bei Bedarf umgebrochen, um Zeilenboxen zu füllen. Entspricht
collapse wrap
. pre
-
Abfolgen von Leerraum werden beibehalten. Zeilen werden nur bei Zeilenumbrüchen im Quelltext und bei
<br>
-Elementen umbrochen. Entsprichtpreserve nowrap
. pre-wrap
-
Abfolgen von Leerraum werden beibehalten. Zeilen werden bei Zeilenumbrüchen, bei
<br>
-Elementen und bei Bedarf umgebrochen, um Zeilenboxen zu füllen. Entsprichtpreserve wrap
. pre-line
-
Abfolgen von Leerraum werden zusammengefügt. Zeilen werden bei Zeilenumbrüchen, bei
<br>
-Elementen und bei Bedarf umgebrochen, um Zeilenboxen zu füllen. Entsprichtpreserve-breaks wrap
.
Hinweis:
Die white-space
-Eigenschaft als Kurzform ist eine relativ neue Funktion (siehe Browser-Kompatibilität). Ursprünglich hatte sie sechs Schlüsselwortwerte; jetzt wird der Wert nowrap
stattdessen als ein Wert für text-wrap-mode
interpretiert, während der Wert break-spaces
als ein Wert für white-space-collapse
interpretiert wird. Die oben genannten vier Schlüsselwörter sind noch spezifisch für white-space
, haben jedoch Langformäquivalente. Die Änderung, white-space
zur Kurzform zu machen, erweitert akzeptable Werte um noch mehr Schlüsselwörter und Kombinationen, wie wrap
und collapse
.
Die folgende Tabelle fasst das Verhalten dieser vier white-space
-Schlüsselwortwerte zusammen:
Neue Zeilen | Leerzeichen und Tabs | Textumbruch | Leerzeichen am Zeilenende | Sonstige Leerraumtrennzeichen am Zeilenende | |
---|---|---|---|---|---|
normal |
Zusammenfügen | Zusammenfügen | Umbruch | Entfernen | Hängen |
pre |
Beibehalten | Beibehalten | Kein Umbruch | Beibehalten | Kein Umbruch |
pre-wrap |
Beibehalten | Beibehalten | Umbruch | Hängen | Hängen |
pre-line |
Beibehalten | Zusammenfügen | Umbruch | Entfernen | Hängen |
Ein Tabulator entspricht standardmäßig 8 Leerzeichen und kann mit der tab-size
-Eigenschaft konfiguriert werden. Im Fall der Werte normal
, nowrap
und pre-line
wird jeder Tabulator in ein Leerzeichen (U+0020) umgewandelt.
Hinweis: Es wird unterschieden zwischen Leerzeichen und sonstigen Leerraumtrennzeichen. Diese sind wie folgt definiert:
- Leerzeichen
-
Leerzeichen (U+0020), Tabs (U+0009) und Segmentumbrüche (wie neue Zeilen).
- Sonstige Leerraumtrennzeichen
-
Alle anderen in Unicode definierten Leerraumtrennzeichen, außer denen, die bereits als Leerzeichen definiert sind.
Wo Leerraum hängt, kann dies die Größe des Kastens beeinflussen, wenn er zur intrinsischen Größenbestimmung gemessen wird.
Zusammenfügen von Leerraum
Die Seite zur white-space-collapse
-Eigenschaft erklärt den Browser-Algorithmus zum Zusammenfügen von Leerraum.
Formale Definition
Anfangswert | normal |
---|---|
Anwendbar auf | alle Elemente |
Vererbt | Ja |
Berechneter Wert | wie angegeben |
Animationstyp | diskret |
Formale Syntax
Beispiele
Einfaches Beispiel
code {
white-space: pre;
}
Zeilenumbrüche in <pre>-Elementen
pre {
white-space: pre-wrap;
}
In Aktion
Steuerung des Zeilenumbruchs in Tabellen
HTML
<table>
<tr>
<td></td>
<td>Very long content that splits</td>
<td class="nw">Very long content that don't split</td>
</tr>
<tr>
<td class="nw">white-space:</td>
<td>normal</td>
<td>nowrap</td>
</tr>
</table>
CSS
table {
border-collapse: collapse;
border: solid black 1px;
width: 250px;
height: 150px;
}
td {
border: solid 1px black;
text-align: center;
}
.nw {
white-space: nowrap;
}
Ergebnis
Mehrere Zeilen in einem SVG-Text-Element
Die white-space
-CSS-Eigenschaft kann verwendet werden, um mehrere Zeilen in einem <text>
-Element zu erstellen, welches standardmäßig nicht umbricht.
HTML
Der Text im <text>
-Element muss in mehrere Zeilen aufgeteilt werden, damit die neuen Zeilen erkannt werden. Nach der ersten Zeile muss der restliche Leerraum entfernt werden.
<svg viewBox="0 0 320 150">
<text y="20" x="10">Here is an English paragraph
that is broken into multiple lines
in the source code so that it can
be more easily read and edited
in a text editor.
</text>
</svg>
CSS
text {
white-space: break-spaces;
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Text Module Level 4 # white-space-property |
Scalable Vector Graphics (SVG) 2 # TextWhiteSpace |
Browser-Kompatibilität
Siehe auch
- Eigenschaften, die definieren, wie Wörter innerhalb der Wörter umbrochen werden:
overflow-wrap
,word-break
,hyphens
tab-size