Все или почти все используют в верстке . Много ли из нас, поставив в коде
задумывается: а действительно ли нужен он тут? Среди неискушенных верстальщиков часто можно увидеть верстку такого характера: верстка меню

А еще можно встретить вот такие замечательные абзацы:

Может возникнуть вопрос: если на сайте отображается все по дизайну, что тут не так? А не так тут — этот кошмарный, кривой, ламерский код, который говорит об очень низкой квалификации верстальщика, который не удосужился даже разобраться в назначениях .

Применять
для формирования абзацев — это все равно, что забивать гвозди шуруповертом (это тоже инструмент, почему бы и не забить гвоздь, другой).

Для чего предназначен тег
?

update 23.02.10 — с "фокусами" с white-space: pre нужно быть внимательными, т.к. при таком форматировании строки, которые не вмещаются в блок, автоматически не переносятся на новую строку. Особенно это актуально для резиновых дизайнов. В таких случаях все же приходится применять
.

P { white-space: pre; }

Заметка

Сообщество фанатов семантической верстки вообще не включили
в .

Где не должно быть
?

  • использовать теги по назначению: для абзацев — это < >, для списков и — < >, < >, < > и т.д.;
  • для форматирования текста и задания отступов использовать , такие как , ;
  • использовать отдельные элементы для создания строк (для этого лучше всего подходят нейтральные элементы разметки < > и < >).

Рассмотрим несколько практических примеров. Абзацы:

Высокопроизводительное решение обладает большой пропускной способностью — до 6.2 Gbps, и идеально подходит не только для передачи голоса и видео, но так же и для новых приложений, требовательных к полосе пропускания, таких как on-line игры.

SGSN способен поддерживать до 1,5 миллионов активных PDP сессий.

P { margin-bottom: 12px; }

Несколько строк номеров телефонов:

Часто возникает потребность добавить новый абзац, но без пустой строки, которую вставляет тег абзаца

Для некоторых фрагментов текста принятые для абзацев стандартные интервалы просто неуместны. Это могут быть надписи под картинками и в таблицах, стихи, цитаты, сноски и примечания.

Для принудительного переноса строк предусмотрен специальный тег, функция которого заложена в его названии br (break row - "разорвать ряд, строку"). Тег
языка гипертекстовой разметки html означает, что все следующее за ним содержимое должно начинаться с новой строки. Если нужно, можно проставить несколько тегов подряд, чтобы добиться необходимого интервала.

Тег
не чувствителен к регистру и не требует закрывающего тега, потому что это пустой элемент, но лучше привыкать закрывать все теги. В XHTML тег разрыва должен быть "наглухо закрыт" на обратный слэш.

Пример использования тега разрыва

Тег br в действии < /title></p><p><р> Прогул на службе </р></p><p><p>Еще нигде и никогда <br></p><p>Я не был столь плохим <br></p><p>Начальства алчная орда <br></p><p>Грызет меня живым </р></p><p>Прогул на службе</p><p>Еще нигде и никогда<br>Я не был столь плохим.<br>Начальства алчная орда<br>Грызет меня живым.</p><h2>Атрибут тега <br></h2><p>Единственный атрибут, которым обладает html тег <br>, называется Он указывает браузеру, как поступить с переносимой строкой, если тексту придется обтекать так называемый плавающий элемент, каковым может быть, например, изображение с атрибутом выравнивания align, использующим значения right/left, или блок в CSS, которому прописано свойство float.</p><p>В спецификациях по XHTML 1.0 / HTML 4.01 атрибут clear можно использовать только с Transitional, Frameset и <!DOCTYPE>, иначе код будет нерабочим.</p><h2>Свойства атрибута тега </h2><p>Эффект от применения атрибута clear зависит от его значения и расположения обтекаемого текстом плавающего элемента. Атрибут может принимать 4 значения:</p><p><br clear = "right | left | all | none"></p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/21147/458111.jpg' width="100%" loading=lazy></p><p>Значение left запрещает обтекание элемента, выровненного по левому краю, поэтому текст, "споткнувшись" о тег <br>, расположится ниже изображения или иного плавающего элемента.</p><p>Точно такой результат получится от использования аргумента all, который ни за что не позволит ни справа, ни слева.</p><p>Значение right запрещает тексту обтекание элемента, выровненного по правому краю, поэтому после тега <br> тексту не останется ничего другого, как обойти изображение, обтекая его справа.</p><p>Значение none ("ни вашим, ни нашим") вообще снимает все полномочия с атрибута clear, и тег <br> молча переносит строку вниз.</p><p>Значение по умолчанию, как таковое, у атрибута clear тега отсутствует.</p><h2>Тег <br> - это мягкий перенос</h2><p>Тег разрыва строки очень удобен для создания необходимых интервалов между абзацами, внутри которых он используется как мягкий перенос, но не как средство для деления текста на абзацы.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/21147/458084.jpg' width="100%" loading=lazy></p><p>Не следует слишком увлекаться тегом перевода строк для форматирования текста, потому что результаты его применения не всегда отличаются изяществом.</p><p>Например, если использовать тег <br> для перевода строк внутри абзаца, это может привести к появлению "гребенки" в окне пользователя, если оно меньше окна, на которое ориентировался веб-мастер.</p> <p>Приветствую вас. Конечно, в html перенос строки можно сделать двумя способами. Если вы пользуетесь <a href="/vizualnyi-redaktor-wordpress-tinymce-advanced-opisanie-i-nastroika-ne-rabotaet-vizualnyi/">визуальным редактором</a> от WordPress, то он автоматически добавляет переносы строк, как это происходит в программе <a href="/vse-luchshie-goryachie-klavishi-microsoft-word-goryachie-klavishi-v-word-samye/">Microsoft Word</a> или любом другом <a href="/kak-postavit-vektor-nad-bukvoi-v-vorde-sozdanie-vektornogo/">текстовом редакторе</a>. Но иногда необходимо работать с текстом в коде. Как сделать перенос строки в html-коде?</p> <h2>Переносим строку</h2> <p>Для этого в html есть короткий одинарный тег — <br> (сокращенно от <b>break </b>). Что он делает? Весь текст, который написан после этого тега будет выведен с новой строки. Даже если на текущей строке остается место для его вывода, он все равно будет перенесен.</p> <h2>Использование br</h2> <p>Использовать тег нужно только тогда, когда вам не нужно начинать новый абзац, а вывести текст просто на новой строке. Например, вам надо записать стихотворение. Чтобы не заключать каждую строчку стиха в тег абзаца, можно просто в конце каждой строчки писать тег <br> и тогда следующая строчка перенесется вниз. Вот так вот все просто.</p> <p>Тег не следует использовать как альтернативу абзацам. Стоит помнить, что между абзацами образуется отступ, по высоте равный одной пустой строке. При переносе с помощью br отступ получается меньше.</p> <h2>Как сделать много переносов?</h2> <p>А что делать, если вам нужно сделать после какого-то текста сделать большой отступ от дальнейшего содержимого. Есть два варианта, как это сделать. Можно написать много тегов br . Так можно сделать бесконечное количество переносов.</p> <p>Но лучше сделать более правильно. Можно задать нужному абзацу стилевой класс, а потом через css задать большой отступ снизу.</p><p> <p class = “abzac”>Абзац</p> </p><p>Abzac{<br> Margin-bottom: 100px;<br> }</p> <p>В этом случае будет задан отступ снизу в 100 пикселей. Соответственно, отступ можно прописать любой.</p> <p>При отображении <a href="/nuzhno-sozdat-dokument-na-vinde-10-pomoshch-po-rabote-s-redaktorom-windowsword/">текстовых документов</a> в браузере место переноса строки в пределах абзаца определяется автоматически в зависимости от размера шрифтов и размера окна просмотра. Перенос строки может осуществляться только по символам-разделителям слов (например, пробелам). Иногда в документах требуется задать принудительный перевод строки, реализующийся независимо от параметров настроек браузера. Для этого служит тег принудительного перевода строки <BR>, который не имеет соответствующего закрывающего тега. Включение тега <BR> в текст документа обеспечит размещение последующего текста с начала новой строки. Например, такой подход может использоваться для создания структур типа списков без использования специальных тегов разметки списка. Или, например, без данного тега не обойтись для отображения стихотворений и т. п.</p> <p>Приведем пример использования принудительного перевода строки (рис. 1.8):</p><p><TITLE>Использование принудительного перевода строки

Над омраченным Петроградом

Дышал ноябрь осенним хладом.

Плеская шумною волной

В края своей ограды стройной,

Нева металась, как больной

В своей постеле беспокойной.

А.С.Пушкин. Медный всадник

Рис. 1.8. Тег
можно использовать для принудительного перевода строки

В отличие от тега абзаца

При использовании тега
не будет образована пустая строка.

Использование тега
требует осторожности - возможна ситуация, когда браузер уже сделал перевод строки за одно-два слова до того, как встретил ваш тег
. Это бывает в случае, если ширина окна программы просмотра читателя меньше, чем тот же параметр программы, с помощью которой вы тестировали ваш документ. При этом может получиться, что в строке посреди абзаца останется только одно слово, нарушая тем самым красоту компоновки документа.

Примечание

При использовании тега
для разбивки текста, обтекающего изображения или таблицы, можно задавать параметр CLEAR, прекращающий обтекание текста. Об этом можно прочитать в главах 3 и 4.

Теги u

Бывают ситуации, когда требуется выполнить операцию противоположного назначения - запретить перевод строки. Для этого существует тег-контейнер . Текст, размеченный этим тегом, будет гарантированно располагаться в одной строке, независимо от ее длины. Если при этом получающаяся строка будет выходить за пределы окна просмотра браузера, то появится горизонтальная полоса прокрутки.

Примечание

Для обеспечения неразрывности текста, располагаемого в ячейках таблиц, существует специальный параметр NOWRAP тега . Об этом можно узнать в главе 4.

Размечая текст с помощью тега неразрывной строки можно получить очень длинные строки. Чтобы этого избежать, можно указать браузеру читателя место возможного перевода строки, что будет выполнено только при необходимости (так называемый "мягкий" перевод строки). Это можно осуществить, поставив в нужном месте текста тег (Word BReak), который так же, как и тег
, не нуждается в закрывающем теге.

Примечание

Тег вообще не поддерживается браузером Netscape. Браузер Microsoft Internet Explorer распознает этот тег только в тексте, размеченном тегами .

Урок 5.

В этом уроке мы:
1. Узнаем как сделать чтобы html код был для нас более удобен и легко читаем.
2. Разберем как правильно делать перенос текстовой строки.

Делаем html код удобным.

Сейчас наш код понятен и легко читаем, так как в нем мало текста и практически нет тегов. Когда мы создадим более сложную страницу, то там будет много тегов, соответственно найти нужный будет сложно.

Чтобы не было каши из тегов, нужно изначально расставлять теги и строки так, чтобы они визуально воспринимались легче. Когда браузер считывает информацию с html страницы, ему без разницы сколько пробелов и сколько пустых строк в коде.

Я изменил текст в коде страницы относительно той, которую мы создавали, но это не важно. На левом и на правом рисунке изображен один и тот же код. Оба варианта будут отображаться браузером на экране монитора абсолютно одинаково. Согласитесь, работать с кодом изображенным справа будет гораздо легче, чем с тем, что слева.

Рассматриваемый нами код очень простой, но даже сейчас заметна разница в визуальном восприятии. Каких-либо определенных правил "наведения порядка" нет, каждый мастер сам решает как ему удобнее работать.

Перенос строки html. Тег <br>.

Обратите внимание на рисунок. В первом варианте текст написан в одну строку, во втором варианте в две строки.


Браузер будет отображать оба варианта одинаково. Текст будет написан в одну строку:


Вы спросите, почему так? Ведь в одном из кодов часть текста перенесена на другую строку. Было бы логично если бы в браузере часть текста тоже перенеслась на другую строку, но у html своя логика в этом отношении. Если мы в html коде делаем перенос строки, то для браузера это равнозначно одному пробелу (как обычный пробел между словами в тексте). Если мы перенесем часть текста не на одну строку вниз, а на 2 или 3 (любое количество), то браузер все равно будет считать это расстояние за один обычный пробел между словами и при выводе на экран текст будет писаться в одну строку.

Тег <br>

Когда мы в третьем уроке знакомились с тегами, я упомянул, что бывают теги которые не требуют закрытия. Тег <br> один из них, служит он для переноса строки.
Давайте применим его в коде:

Мы вставили тег <br> в наш html код и теперь при запуске файла через браузер часть текста будет перенесена на следующую стоку.
* Не забываем сохранять изменения в Notepad (Ctrl + S) и обнавлять страницу в браузере (F5).