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.
此 CSS white-space
屬性決定如何處理元素內的空白字元。
備註:如果要讓文字本身斷行,請改用 overflow-wrap
、word-break
或 hyphens
。
css
/* Keyword values */
white-space: normal;
white-space: nowrap;
white-space: pre;
white-space: pre-wrap;
white-space: pre-line;
/* Global values */
white-space: inherit;
white-space: initial;
white-space: unset;
預設值 | normal |
---|---|
Applies to | all elements |
繼承與否 | yes |
Computed value | as specified |
Animation type | discrete |
Syntax
white-space
的特性值為下列其中之一。
Values
normal
-
連續的空白字元會被合併(collapse),換行字元被視為空白字元。換行只在被文字空間限制時發生。
nowrap
-
對待空白字元的方式跟
normal
一樣,且會強制不換行。 pre
-
連續的空白字元都會被保留。換行在有換行字元以及
<br>
時發生。 pre-wrap
-
連續的空白字元都會被保留。換行會在換行字元、有
<br>
元素以及被文字空間限制時發生。 pre-line
-
連續的空白字元會被合併(collapse)。換行在換行字元、
<br>
以及被文字空間限制時發生。
下列表格整理了各項 white-space
值的行為:
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 |
Formal syntax
Examples
Basic example
css
code {
white-space: pre;
}
Line breaks inside <pre>
elements
css
pre {
word-wrap: break-word; /* IE 5.5-7 */
white-space: -moz-pre-wrap; /* Firefox 1.0-2.0 */
white-space: pre-wrap; /* Modern browsers */
}
See it in action
Source
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
CSS + Result
Specifications
Specification |
---|
CSS Text Module Level 3 # white-space-property |
Browser compatibility
BCD tables only load in the browser
See also
- Properties that define how words break within themselves:
overflow-wrap
,word-break
,hyphens