Властивість white-space встановлює, як відображати пробіли між словами. У звичайних умовах будь-яка кількість пробілів у коді HTML відображається на веб-сторінці як один. Винятком є елемент <pre>, поміщений у цей контейнер текст виводиться з усіма пробілами, як він був відформатований користувачем. Таким чином, white-space імітує роботу <pre>, але на відміну від нього не змінює шрифт на моноширинний.
Коротка інформація
| Значення за замовчуванням | normal |
|---|---|
| Успадковується | Так |
| Застосовується | До всіх елементів |
| Анімується | Ні |
Синтаксис
<code> white-space: normal | nowrap | pre | preline | pre-wrap
Позначення
| Опис | Приклад | |
|---|---|---|
| <тип> | Вказує тип значення. | <розмір> |
| A && B | Значення повинні виводитися у зазначеному порядку. | <розмір> && <колір> |
| A | B | Вказує, що потрібно вибрати лише одне значення із запропонованих (A або B). | normal | small-caps |
| A || B | Кожне значення може використовуватися самостійно або спільно з іншими у довільному порядку. | width || count |
| [ ] | Групує значення. | [ crop || cross ] |
| * | Повторювати нуль або більше разів. | [,<час>]* |
| + | Повторювати один або більше разів. | <число>+ |
| ? | Вказаний тип, слово або група не є обов'язковим. | inset? |
| {A, B} | Повторювати не менше A, але не більше B разів. | <радіус>{1,4} |
| # | Повторювати один або більше разів через кому. | <час># |
Значення
- normal
- Текст у вікні браузера виводиться як завжди, переноси рядків встановлюються автоматично.
- nowrap
- Пробіли не враховуються, перенесення рядків у коді HTML ігнорується, весь текст відображається одним рядком; разом з тим, додавання <br> переносить текст на новий рядок. Як вони були додані розробником у коді HTML. Якщо рядок виходить занадто довгим і не поміщається у вікні браузера, то буде додана горизонтальна смуга прокручування. він не поміщається в задану область.
- pre-wrap
- У тексті зберігаються всі пробіли та перенесення, проте якщо рядок по ширині не поміщається в задану область, то текст автоматично буде перенесений на наступну рядок.
Дія значень на текст представлена в табл. 1.
| Значення | Перенесення тексту | Пробіли |
|---|---|---|
| normal | Переноситься | Не враховуються |
| nowrap | Не переноситься | Не враховуються |
| pre | Не переноситься | Враховуються |
| pre-line | Переноситься | Не враховуються |
| pre-wrap | Переноситься | Враховуються |
Приклад
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>white-space</title> <style> .example { border: 1px dashed #634f36; /* Параметри рамки */
background: #fffff5; /* Колір тла */
font-family: "Courier New", Courier, monospace; /* Сімейство шрифту */
padding: 7px; /* Поля навколо тексту */
margin: 0 0 1em; /* Відступи */
white-space: pre; /* Враховуються всі прогалини та переноси */
}
.exampleTitle { border: 1px solid black; /* Параметри рамки */
border-bottom: none; /* Забираємо лінію знизу */
padding: 3px; /* Поля навколо тексту */
display: inline; /* Відображати як інтегрований елемент */
background: #efecdf; /* Колір тла */
font-weight: bold; /* Жирне зображення */
font-size: 90%; /* Розмір шрифту */
margin: 0; /* Забираємо відступи */
white-space: nowrap; /* Переносів у тексті немає */
}
</style>
</head>
<body> <p class="exampleTitle">Приклад</p> <p class="example"> <html> <body> <b>Велика теорема Ферма</b><br> <i>X <sup><small>n</small></sup> + Y <sup><small>n</small></sup>=Z <sup><small>n</small></sup></i><br& ;gt; де n — ціле число > 2 </body> </html>
</p>
</body>
</html>Результат цього прикладу показаний на рис. 1.

Мал. 1. Застосування властивості white-space
Об'єктна модель
Об'єкт.style.whiteSpace
Примітка
Браузер Internet Explorer до версії 7.0 включно не підтримує значення pre-line та pre-wrap. Для <textarea> значення normal та pre поводяться як pre-wrap, а значення nowrap поводиться як pre-line.
Opera до версії 9.5 не підтримує значення pre-line. Для <textarea> значення normal та pre поводяться як pre-wrap, а значення nowrap поводиться як pre-line.
У Firefox для <textarea> значення normal, nowrap , і pre сприймаються як pre-wrap.
Специфікація
| Специфікація | Статус |
|---|---|
| CSS Text Module Level 3 | Робочий проект |
| CSS Level 2 Revision 1 (CSS 2.1) | Рекомендація |
Специфікація
Кожна специфікація проходить кілька стадій схвалення .
- Recommendation (Рекомендація) — специфікація схвалена W3C і рекомендована як стандарт.
- Candidate Recommendation (Можлива рекомендація) — група, яка відповідає за стандарт, задоволена, як він відповідає своїм цілям, але потрібна допомога спільноти розробників з реалізації стандарту.) — на цьому етапі документ представлений на розгляд Консультативної ради W3C для остаточного затвердження. та внесення поправок для розгляду спільнотою.
- Editor's draft (Редакторська чернетка) — чорнова версія стандарту після внесення змін до редакторів проекту.
- Draft (Чернетка специфікації) — перша чорнова версія стандарту.
Браузери
| normal | 5.5 | 12 | 1 | 4 | 1 | 1 |
| pre | 6 | 12 | 1 | 4 | 1 | 1 |
| nowrap | 5.5 | 12 | 1 | 4 | 1 | 1 |
| pre-wrap | 8 | 12 | 1 | 8 | 3 | 3 |
| pre-line | 8 | 12 | 1 | 9.5 | 3 | 3.5 |
| normal | 1 | 1 | 4 | 1 |
| pre | 1 | 1 | 4 | 1 |
| nowrap | 1 | 1 | 4 | 1 |
| pre-wrap | 1 | 4 | 9 | 3 |
| pre-line | 1 | 10 | 3 |
Браузери
У таблиці браузерів застосовуються такі позначення.
- — властивість повністю підтримується браузером з усіма допустимими значеннями;
- — властивість браузером не сприймається та ігнорується;
- — при роботі можлива поява різних помилок, або властивість підтримується лише частково, наприклад, не всі допустимі значення діють або властивість застосовується не до всіх елементів, зазначених у специфікації.
Число вказує версію браузера, з якої властивість підтримується.
