white-space

Summary

The white-space CSS property is used to to describe how whitespace inside the element is handled.

Syntax

Formal syntax: normal | pre | nowrap | pre-wrap | pre-line
white-space: normal
white-space: nowrap
white-space: pre
white-space: pre-wrap
white-space: pre-line

white-space: inherit

Values

normal
Sequences of whitespace are collapsed. Newline characters in the source are handled as other whitespace. Breaks lines as necessary to fill line boxes.
nowrap
Collapses whitespace as for normal, but suppresses line breaks (text wrapping) within text.
pre
Sequences of whitespace are preserved, lines are only broken at newline characters in the source and at <br> elements.
pre-wrap
Sequences of whitespace are preserved. Lines are broken at newline characters, at <br>, and as necessary to fill line boxes.
pre-line
Sequences of whitespace are collapsed. Lines are broken at newline characters, at <br>, and as necessary to fill line boxes.

The following table summarizes the behavior of various white-space values:

  New lines Spaces and tabs Text wrapping
normal Collapse Collapse Wrap
nowrap Collapse Collapse No wrap
pre Preserve Preserve No wrap
pre-wrap Preserve Preserve Wrap
pre-line Preserve Collapse Wrap

Examples

code { 
  white-space: pre; 
}

Specifications

Specification Status Comment
CSS Text Level 3 Working Draft Precises the breaking algorithms. Formally makes white-space a shorthand property.
CSS Level 2 (Revision 1) Recommendation Initial specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (normal and nowrap) 1.0 1.0 (1.7 or earlier) 5.5 [*] 4.0 1.0 (85)
pre 1.0 1.0 6.0 4.0 1.0 (85)
pre-wrap 1.0 1.0 (1.7 or earlier) — 3.5 (1.9.1)-moz
3.0 (1.9)
8.0 8.0 3.0 (522)
pre-line 1.0 3.5 (1.9.1) 8.0 9.5 3.0 (522)
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support ? ? ? ? ?

[*] Internet Explorer 5.5+ supports word-wrap: break-word;
The following code allows line breaking inside pre elements:

pre {
  word-wrap: break-word;      /* IE 5.5-7 */
  white-space: -moz-pre-wrap; /* Firefox 1.0-2.0 */
  white-space: pre-wrap;      /* current browsers */
}

See also

Document Tags and Contributors

Last updated by: kscarfone,
Hide Sidebar