Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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 ⁨Juli 2015⁩.

{"* "}Some parts of this feature may have varying levels of support.

Die white-space CSS Eigenschaft legt fest, wie weißer Raum innerhalb eines Elements behandelt wird.

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 weißer Raum zusammengefasst wird.
  • Ob und wie Zeilen umbrechen.

Hinweis: Um Wörter innerhalb von sich selbst zu trennen, verwenden Sie stattdessen overflow-wrap, word-break, oder hyphens.

Einzelne Eigenschaften

Diese Eigenschaft ist eine Kurzform für die folgenden CSS-Eigenschaften:

Hinweis: Die Spezifikation definiert eine dritte einzelne Eigenschaft: white-space-trim, die jedoch in keinem Browser implementiert ist.

Syntax

css
/* 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 white-space-collapse und text-wrap-mode Eigenschaften darstellen, oder die folgenden speziellen Schlüsselwörter enthalten:

normal

Sequenzen von weißem Raum werden zusammengefasst. Zeilenumbruchzeichen im Quellcode werden wie andere weiße Räume behandelt. Zeilen werden bei Bedarf gebrochen, um Zeilenkästen zu füllen. Entspricht collapse wrap.

pre

Sequenzen von weißem Raum werden beibehalten. Zeilen werden nur bei Zeilenumbruchzeichen im Quellcode und bei <br>-Elementen gebrochen. Entspricht preserve nowrap.

pre-wrap

Sequenzen von weißem Raum werden beibehalten. Zeilen werden bei Zeilenumbruchzeichen, bei <br> und bei Bedarf zum Füllen von Zeilenkästen gebrochen. Entspricht preserve wrap.

pre-line

Sequenzen von weißem Raum werden zusammengefasst. Zeilen werden bei Zeilenumbruchzeichen, bei <br> und bei Bedarf zum Füllen von Zeilenkästen gebrochen. Entspricht preserve-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; nun wird der Wert nowrap stattdessen als Wert für text-wrap-mode interpretiert, während der Wert break-spaces als Wert für white-space-collapse interpretiert wird. Die oben genannten vier Schlüsselwörter sind immer noch spezifisch für white-space, aber sie haben Langform-Äquivalente. Die Änderung, white-space zu einer Kurzform zu machen, erweitert die akzeptablen 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 Andere Leerzeichentrenner am Zeilenende
normal Zusammenfassen Zusammenfassen Umbruch Entfernen Hängen
pre Beibehalten Beibehalten Kein Umbruch Beibehalten Kein Umbruch
pre-wrap Beibehalten Beibehalten Umbruch Hängen Hängen
pre-line Beibehalten Zusammenfassen Umbruch Entfernen Hängen

Ein Tabulator entspricht standardmäßig 8 Leerzeichen und kann mit der tab-size Eigenschaft konfiguriert werden. Bei den Werten normal, nowrap und pre-line wird jeder Tab in ein Leerzeichen (U+0020) Zeichen umgewandelt.

Hinweis: Es wird zwischen Leerzeichen und anderen Leerzeichentrennern unterschieden. Diese werden wie folgt definiert:

Leerzeichen

Leerzeichen (U+0020), Tabs (U+0009) und Segmentumbechungen (wie Zeilenumbrüche).

Andere Leerzeichentrenner

Alle anderen in Unicode definierten Leerzeichentrenner, außer denen, die bereits als Leerzeichen definiert sind.

Wo weißer Raum gesagt wird zu hängen, kann dies die Größe des Kästchens beim Messen für intrinsisches Sizing beeinflussen.

Formale Definition

Anfangswertnormal
Anwendbar aufalle Elemente
VererbtJa
Berechneter Wertwie angegeben
Animationstypdiskret

Formale Syntax

white-space = 
normal |
pre |
nowrap |
pre-wrap |
break-spaces |
pre-line

Beispiele

Grundlegendes Beispiel

css
code {
  white-space: pre;
}

Zeilenumbrüche innerhalb von <pre>-Elementen

css
pre {
  white-space: pre-wrap;
}

In Aktion

Zeilenumbruch in Tabellen steuern

HTML

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

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 im SVG-Text-Element

Die white-space CSS-Eigenschaft kann verwendet werden, um mehrere Zeilen in einem <text>-Element zu erzeugen, das standardmäßig keinen Umbruch hat.

HTML

Der Text innerhalb des <text>-Elements muss in mehrere Zeilen aufgeteilt werden, damit die neuen Zeilen erkannt werden. Nach der ersten Zeile müssen die übrigen ihren Weißraum entfernen.

html
<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

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