- white — space
- Кратко
- Пример
- Как пишется
- Как понять
- normal
- Подсказки
- На практике
- Денис Ежков советует
- white-space
- Try it
- Syntax
- Values
- Collapsing of white space
- Formal definition
- Formal syntax
- Examples
- Basic example
- Line breaks inside elements
- In action
- Specifications
- Browser compatibility
- See also
- Put Spaces Between Text in HTML
- HTML Whitespace Characters
- CSS Methods
- Empty Span With Specified Width
- Setting Margin on Span
- HTML Space – How to Add Spaces in HTML
- What is the ASCII character for a space?
- How wide is a space character?
- What is the symbol for space in HTML?
- Is space a non-ASCII character?
- How do I make white space in HTML?
- What character looks like a space but isn’t?
white — space
Решаем, будет ли текст переноситься по пробелам или нет.
Время чтения: меньше 5 мин
Кратко
Скопировать ссылку «Кратко» Скопировано
Свойство white — space указывает браузеру, как обрабатывать пробелы в тексте.
Пример
Скопировать ссылку «Пример» Скопировано
a white-space: nowrap;>
a white-space: nowrap; >
Как пишется
Скопировать ссылку «Как пишется» Скопировано
.element white-space: normal; white-space: nowrap; white-space: pre; white-space: pre-wrap; white-space: pre-line; white-space: break-spaces;>
.element white-space: normal; white-space: nowrap; white-space: pre; white-space: pre-wrap; white-space: pre-line; white-space: break-spaces; >
Как понять
Скопировать ссылку «Как понять» Скопировано
Если текста в элементе много (больше, чем может вместить ширина элемента), то по умолчанию браузер пытается переносить слова на новую строку. Перенос в общем случае выполняется по символам пробела либо по символам переноса строк. Разговор сейчас идёт именно про форматирование текста прямо внутри HTML. Ведь мы можем в HTML длинный абзац оставить одной строкой, а можем разбить на несколько строк, используя клавишу Enter. По умолчанию браузер игнорирует форматирование в HTML. Он ориентируется только на теги, и выводит текст на экран, опираясь на текущий способ обработки пробельных символов. Но мы можем изменить этот способ, используя различные значения свойства white — space .
normal
Скопировать ссылку «normal» Скопировано
Если в строке есть несколько подряд идущих пробелов, то браузер схлопывает их в один пробел. Я из лесу вышел = Я из лесу вышел . Все переносы строк в HTML внутри тега также заменяются на пробел:
Однажды, в студёную зимнюю пору
Я из лесу вышел;
p> Однажды, в студёную зимнюю пору p> p>Я из лесу вышел;p>
Подсказки
Скопировать ссылку «Подсказки» Скопировано
На практике
Скопировать ссылку «На практике» Скопировано
Денис Ежков советует
Скопировать ссылку «Денис Ежков советует» Скопировано
🛠 Довольно часто значение white — space : pre используется при вёрстке исходного кода:
white-space
The white-space CSS property sets how white space inside an element is handled.
Try it
The property specifies two things:
Note: To make words break within themselves, use overflow-wrap , word-break , or hyphens instead.
Syntax
/* Single keyword values */ white-space: normal; white-space: nowrap; white-space: pre; white-space: pre-wrap; white-space: pre-line; white-space: break-spaces; /* white-space-collapse and text-wrap shorthand values */ white-space: collapse balance; white-space: preserve nowrap; /* Global values */ white-space: inherit; white-space: initial; white-space: revert; white-space: revert-layer; white-space: unset;
Values
white-space property values can be specified as a single keyword chosen from the list of values below, or two values representing shorthand for the white-space-collapse and text-wrap properties.
Sequences of white space are collapsed. Newline characters in the source are handled the same as other white space. Lines are broken as necessary to fill line boxes.
Collapses white space as for normal , but suppresses line breaks (text wrapping) within the source.
Sequences of white space are preserved. Lines are only broken at newline characters in the source and at elements.
Sequences of white space are preserved. Lines are broken at newline characters, at , and as necessary to fill line boxes.
Sequences of white space are collapsed. Lines are broken at newline characters, at , and as necessary to fill line boxes.
The behavior is identical to that of pre-wrap , except that:
- Any sequence of preserved white space always takes up space, including at the end of the line.
- A line-breaking opportunity exists after every preserved white space character, including between white space characters.
- Such preserved spaces take up space and do not hang, thus affecting the box’s intrinsic sizes ( min-content size and max-content size).
The following table summarizes the behavior of the various white-space keyword values:
New lines | Spaces and tabs | Text wrapping | End-of-line spaces | End-of-line other space separators | |
---|---|---|---|---|---|
normal | Collapse | Collapse | Wrap | Remove | Hang |
nowrap | Collapse | Collapse | No wrap | Remove | Hang |
pre | Preserve | Preserve | No wrap | Preserve | No wrap |
pre-wrap | Preserve | Preserve | Wrap | Hang | Hang |
pre-line | Preserve | Collapse | Wrap | Remove | Hang |
break-spaces | Preserve | Preserve | Wrap | Wrap | Wrap |
Note: There is a distinction made between spaces and other space separators. These are defined as follows:
Spaces (U+0020), tabs (U+0009), and segment breaks (such as newlines).
All other space separators defined in Unicode, other than those already defined as spaces.
Where white space is said to hang, this can affect the size of the box when measured for intrinsic sizing.
Collapsing of white space
Formal definition
Formal syntax
white-space =
normal |
pre |
nowrap |
pre-wrap |
break-spaces |
pre-line
Examples
Basic example
Line breaks inside elements
In action
div id="css-code" class="box"> p < white-space: select> option>normaloption> option>nowrapoption> option>preoption> option>pre-wrapoption> option>pre-lineoption> option>break-spacesoption> option>preserve nowrapoption> select> > div> div id="results" class="box"> 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> div>
.box width: 300px; padding: 16px; > #css-code background-color: rgb(220, 220, 220); font-size: 16px; font-family: monospace; > #css-code select font-family: inherit; > #results background-color: rgb(230, 230, 230); overflow-x: scroll; white-space: normal; font-size: 14px; >
const select = document.querySelector("#css-code select"); const results = document.querySelector("#results p"); select.addEventListener("change", (e) => results.setAttribute("style", `white-space: $e.target.value>`); >);
Specifications
Browser compatibility
BCD tables only load in the browser
See also
Put Spaces Between Text in HTML
Let’s go over the different ways to insert spaces into HTML text. Since HTML compresses all the space characters in your HTML file (i.e. tabs, spaces, etc.) to one character, you will need to use special methods to add more than one space.
This can be frustrating as sometimes HTML makes it hard to handle whitespace on your webpages. In this article, we will list the different ways you can avoid this issue and have more control over the whitespaces in your HTML text.
HTML tags are used for indicated preformatted text. Which means your HTML code tells the browser that the text within the tag should be displayed exactly as written in the HTML file, including any spaces or blank lines.
Here’s an example of using the tag:
This text has preserved spaces and line breaks
Will produce the following result, which will look exactly like it does inside the tags:
This text has preserved spaces and line breaks
HTML Whitespace Characters
Next, we’re going to cover a few of the many Unicode whitespace characters that you can use in HTML (see the full list here).
Here’s the list of the ones we’ll cover, each of which gives differing widths of whitespace:
- Non-Breaking Space: or
- Narrow Non-Breaking Space:
- En Space: or
- Em Space: or
- 3-Per-Em Space:   or
- 4-Per-Em Space:   or
- 6-Per-Em Space:
- Figure Space:   or   ;
- Punctuation Space:   or
- Thin Space: or
- Hair Space:   or
All you need to do is copy and paste the code symbols into your HTML to add the whitespace.
CSS Methods
Using CSS will give you the most consistent results when working with whitespace in your text.
The two key ways are using an empty span with a specified width and setting the margin to the right and left of blocks of texts.
We will cover both methods below.
Empty Span With Specified Width
In this method, we are going to add an empty div in the middle of the sentence and give it a width of 15px . This will add whitespace of that length inside the sentence. Check it out below.
This is an example sentence.
And has the following output:
This is an example sentence.
Setting Margin on Span
This method is similar to the previous technique, but we will be using the margin-left and margin-right properties inside of width . Using margin will give you more control on the spacing on either side of the text. Check it out below.
This is an example sentence.
And has the following output:
This is an example sentence.
HTML Space – How to Add Spaces in HTML
Quincy Larson
Adding a space to your HTML can be deceptively difficult. And there are at least 5 of ways to go about doing this.
This tutorial will show you several examples. It will also show you how to use fancy versions of space, too.
You can do all this in raw HTML, without the need for CSS. But be advised that CSS is the preferred way to add space to your HTML. And freeCodeCamp has a ton of tutorials on how to accomplish this using the CSS box model.
What is the ASCII character for a space?
The ASCII character code for a space is 20. But this is just the standard way. There are several
There are 5 types of spaces in HTML that you can use. To the naked eye, they look the same but they serve slightly different purposes.
And there is also the Tab Character, which represents pressing the tab key on your keyboard. And the Carriage Return Character, which represents pressing the enter key on your keyboard.
+---------------------+-----------+ | Character | HTML Code | +---------------------+-----------+ | Non-breaking space | | | En space | | | Em space | | | Thin space | | | Standard space | | | New Line (Return) |
| | Tab Character | | +---------------------+-----------+
How wide is a space character?
There are four common widths for space characters:
- Standard-width space. This is also called «non-line breaking space» because it will not cause a line break (AKA carriage return).
- Em space. This is called «Em» because it’s as wide as the letter M is in whichever typeface you’re using. (If you’ve heard the term em-dash, this is a dash as wide as the letter M.)
- En space. This is called «En» because it’s as wide as the letter n is in your typeface.
- And finally, there’s «Thin space», which is the thinnest of all spaces.
What is the symbol for space in HTML?
The most commonly-used HTML entity is
You can try throwing this text to force it to render a space.
For example, let’s say you want to put two spaces after a sentence, but something else in the website rendering engine is automatically removing one of the spaces. You may be able to type to add two spaces.
Is space a non-ASCII character?
No. Space is an ASCII character. It’s ASCII value is 20, and you can type it like this:
How do I make white space in HTML?
You may want to use CSS to center your HTML elements instead of hard coding spaces.
But if you just want a quick and dirty way to create whitespace, and push text around, you can use the same space character over and over like this:
[The text you want to add trailing whitespace to] [the text you want to add trailing whitespace to]
What character looks like a space but isn’t?
There are two characters that look like spaces but aren’t:
- The New Line character – also known as the «carriage return». The HTML code for newline character is:
- The Tab Character, which is what you get when you press the tab button in a text field. The HTML code for Tab Character is:
I hope this tutorial has been helpful. Go forth and make space. 🚀