- white-space
- Интерактивный пример
- Сводка
- Синтаксис
- Значения
- Формальный синтаксис
- Как сделать перенос строки?
- Использование свойства white-space
- См. также
- Стиль для переноса форматирования строк как в pre методом CSS:
- Ссылки:
- Комментарии:
- 15 самых популярных статей:
- Html pre перенос строк
- Try it
- Attributes
- Accessibility concerns
- Example
white-space
Свойство white-space управляет тем, как обрабатываются пробельные символы внутри элемента.
Интерактивный пример
Примечание: Для управления переносами внутри слов используйте overflow-wrap , word-break или hyphens .
Сводка
/* Ключевые значения */ white-space: normal; white-space: nowrap; white-space: pre; white-space: pre-wrap; white-space: pre-line; white-space: break-spaces; /* Глобальные значения */ white-space: inherit; white-space: initial; white-space: unset;
Синтаксис
Свойство white-space определяется, как одно ключевое слово, выбранное из списка значений, указанных ниже.
Значения
Последовательности пробелов объединяются в один пробел. Символы новой строки в источнике обрабатываются, как отдельный пробел. Применение данного значения при необходимости разбивает строки для того, чтобы заполнить строчные боксы.
Объединяет последовательности пробелов в один пробел, как значение normal , но не переносит строки (оборачивание текста) внутри текста.
Последовательности пробелов сохраняются так, как они указаны в источнике. Строки переносятся только там, где в источнике указаны символы новой строки и там, где в источнике указаны элементы .
Последовательности пробелов сохраняются так, как они указаны в источнике. Строки переносятся только там, где в источнике указаны символы новой строки и там, где в источнике указаны элементы , и при необходимости для заполнения строчных боксов.
Последовательности пробелов объединяются в один пробел. Строки разбиваются по символам новой строки, по элементам , и при необходимости для заполнения строчных боксов..
Поведение идентично pre-wrap со следующими отличиями:
- Последовательности пробелов сохраняются так, как они указаны в источнике, включая пробелы на концах строк.
- Строки переносятся по любым пробелам, в том числе в середине последовательности пробелов.
- Пробелы занимают место и не висят на концах строк, а значит влияют на внутренние размеры (min-content и max-content).
В приведённой ниже таблице указано поведение различных значений свойства white-space :
Новые строки | Пробелы и табуляция | Перенос текста по словам | Пробелы в конце строки | |
---|---|---|---|---|
normal | Объединяются в одну | Объединяются в один пробел | Переносится | Удаляются |
nowrap | Объединяются в одну | Объединяются в один пробел | Не переносится | Удаляются |
pre | Сохраняются как в источнике | Сохраняются как в источнике | Не переносится | Сохраняются как в источнике |
pre-wrap | Сохраняются как в источнике | Сохраняются как в источнике | Переносится | Висят |
pre-line | Сохраняются как в источнике | Объединяются в один пробел | Переносится | Удаляются |
break-spaces | Сохраняются как в источнике | Сохраняются как в источнике | Переносится | Переносятся |
Формальный синтаксис
white-space =
normal | (en-US)
pre | (en-US)
nowrap | (en-US)
pre-wrap | (en-US)
break-spaces | (en-US)
pre-line
Как сделать перенос строки?
Сделать перенос строки в желаемом месте текста можно несколькими путями. Рассмотрим несколько вариантов: через элемент , элемент и свойство white-space.
Использование
Первому
игроку
приготовиться
В примере 1 элемент
применяется для вывода стиха, где переносы строк выполняются определённым, задуманным автором образом.
Не знаю, о чём я тоскую.
Покоя душе моей нет.
Забыть ни на миг не могу я
Преданье далёких лет.
Генрих Гейне, Лорелея. Перевод Самуила Маршака
Использование
if a % 2 == 0: print('Чётное число') else: print('Нечётное число')
Текст внутри выводится моноширинным шрифтом, иными словами, каждая буква имеет одинаковую ширину. Это позволяет располагать символы друг под другом и с помощью пробелов легко выравнивать строки. Переносы текста, как и пробелы, внутри отображаются так же, как и в коде HTML, поэтому дополнительно вставлять какие-то элементы или ещё как-то обозначать перенос не требуется.
Использование свойства white-space
У свойства white-space есть несколько значений, дающих разные возможности, но нас интересует значение pre-line , которое учитывает только переносы текста и игнорирует идущие подряд пробелы (пример 3). Получается, что от взяли только переносы строк без учёта пробелов. Сам шрифт тоже не меняется на моноширинный.
Пример 3. Использование white-space
Переносы текста с участием стилевого свойства white-space дают нам дополнительные возможности, учитывающие ширину экрана. В частности, для широкого экрана переносы можно убрать, а для маленького экрана, наоборот, установить. В примере 4 с помощью медиа-запроса устанавливаем, что при уменьшении ширины окна добавятся переносы строк.
Пример 4. Перенос строк в зависимости от ширины
Здесь текст исходно выводится в одну строку и переносы добавляются браузером автоматически. При уменьшении ширины окна до 600 пикселей переносы возникают там, где мы их сделали в коде HTML.
См. также
Перенос строк в теге
Если вы установите ширину width: 100%, то получите горизонтальную прокрутку в IE7 — используйте width:99%. Также можете добавить тегу pre границу, цвет фона и отступы margin (внешний) и padding (внутренний). Не забудьте поправить их и для стилей печатной версии. У меня это выглядит так:
Стиль для переноса форматирования строк как в pre методом CSS:
Если хочется сделать свойства элемента pre для другого элемента (например для злосчастного ) вы должны использовать css свойство
Оно не работает в IE 5 и требует strict доктайпа в IE 6. Борцы за семантику могут использовать конструкцию
Ссылки:
Комментарии:
Не работает в chrome, если у родителя стоит white-space:nowrap; , а внутри у блоков уже white-space: pre-line; /* css-3 */
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
Чтобы оставить комментарий нужно войти или зарегистрироваться (Регистрируйтесь за 5 секунд, без подтверждения email и т.п.).
Либо волшебно используйте ваш логин в Google, Яндекс, рамблер или ЖЖ чтобы войти через Open_ID
15 самых популярных статей:
- Русский язык в URL (77641 просмотр)
- Align средствами css и атрибутами html (64918 просмотров)
- Биты, байты, кодировки (54912 просмотров)
- Как сделать, чтобы письма не попадали в спам 2. DKIM (51418 просмотров)
- Как отключить проверку совместимости расширений в Firefox (42531 просмотр)
- Как сделать чтобы письма не попадали в спам ящик (41300 просмотров)
- Вёрстка дивами — «футер который всегда внизу». (38596 просмотров)
- Javascript — о массивах и объектах (36854 просмотра)
- Меняем цвета Input в Google Chrome (35697 просмотров)
- Хлебные крошки. Нужна ли строка навигации на сайте? (34185 просмотров)
- Что происходит в режиме совместимости (28204 просмотра)
- Статистика кодов ответов сервера (26979 просмотров)
- Превью для PSD файлов фотошопа (24342 просмотра)
- Про DOCTYPE и стандарты html. (21493 просмотра)
- Перенос строк в теге (21406 просмотров)
Html pre перенос строк
The HTML element represents preformatted text which is to be presented exactly as written in the HTML file. The text is typically rendered using a non-proportional, or monospaced, font. Whitespace inside this element is displayed as written.
Try it
If you have to display reserved characters such as < , >, & , and » within the tag, the characters must be escaped using their respective HTML entity.
Attributes
This element only includes the global attributes.
cols Non-standard Deprecated
Contains the preferred count of characters that a line should have. It was a non-standard synonym of width . To achieve such an effect, use CSS width instead.
width Deprecated Non-standard
Contains the preferred count of characters that a line should have. Though technically still implemented, this attribute has no visual effect; to achieve such an effect, use CSS width instead.
wrap Non-standard Deprecated
Is a hint indicating how the overflow must happen. In modern browser this hint is ignored and no visual effect results in its present; to achieve such an effect, use CSS white-space instead.
Accessibility concerns
It is important to provide an alternate description for any images or diagrams created using preformatted text. The alternate description should clearly and concisely describe the image or diagram’s content.
People experiencing low vision conditions and browsing with the aid of assistive technology such as a screen reader may not understand what the preformatted text characters are representing when they are read out in sequence.
A combination of the and elements, supplemented by the ARIA role and aria-label attributes on the pre element allow the preformatted ASCII art to be announced as an image with alternative text, and the figcaption serving as the image’s caption.
Example
figure> pre role="img" aria-label="ASCII COW"> ___________________________ < I'm an expert in my field. > --------------------------- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || || pre> figcaption id="cow-caption"> A cow saying, "I'm an expert in my field." The cow is illustrated using preformatted text characters. figcaption> figure>