CSS властивості
ГлавнаяВластивості CSSАтрибут white-space в CSS

Атрибут white-space в CSS

1316

Властивість 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.

Табл. 1. Перенесення тексту та пробіли при різних значеннях white-space
Значення Перенесення тексту Пробіли
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"> &lt;html&gt; &lt;body&gt; &lt;b&gt;Велика теорема Ферма&lt;/b&gt;&lt;br&gt; &lt;i&gt;X &lt;sup&gt;&lt;small&gt;n&lt;/small&gt;&lt;/sup&gt; + Y &lt;sup&gt;&lt;small&gt;n&lt;/small&gt;&lt;/sup&gt;=Z &lt;sup&gt;&lt;small&gt;n&lt;/small&gt;&lt;/sup&gt;&lt;/i&gt;&lt;br& ;gt; де n — ціле число &gt; 2 &lt;/body&gt; &lt;/html&gt;
</p>
</body>
</html>

Результат цього прикладу показаний на рис. 1.

Застосування властивості white-space

Мал. 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 4 10 3

Браузери

У таблиці браузерів застосовуються такі позначення.

  •  — властивість повністю підтримується браузером з усіма допустимими значеннями;
  •  — властивість браузером не сприймається та ігнорується;
  •  — при роботі можлива поява різних помилок, або властивість підтримується лише частково, наприклад, не всі допустимі значення діють або властивість застосовується не до всіх елементів, зазначених у специфікації.

Число вказує версію браузера, з якої властивість підтримується.

Див. також