Элементы стиля или дополнений/полей

В наши дни с HTML5 и CSS3 используется использование тегов <br>, на которых нахмурились, когда можно использовать margin/padding?

РЕДАКТИРОВАТЬ: Это касается расстояния между элементами div для моего варианта использования, но рекомендуется также рекомендация по общей рекомендации.

Ответы

Ответ 1

На самом деле существуют довольно четкие правила, связанные с его использованием, возвращаясь к дням HTML 2.0, когда они были впервые представлены:

Элемент <BR> указывает разрыв строки между словами (см. 6, "Символы, слова и абзацы" ). Например:

<P> Pease porridge hot<BR>
Pease porridge cold<BR>
Pease porridge in the pot<BR>
Nine days old.

Сам элемент <BR> никогда не предназначался для управления запасом/дополнением. Хотя они вносили в HTML 3.2 презентационный атрибут clear для обработки таких вещей, как плавающие изображения, он был быстро устарел в HTML 4 и XHTML 1 в пользу CSS. Это было почти 15 лет назад, так что это действительно ничего нового.

В HTML5 они значительно упростили, что <BR> не предназначен для презентации или макета с примерами (и атрибут clear устарел):

Элементы

br должны использоваться только для разрывов строк, которые фактически являются частью содержимого, как в стихах или адресах.

Следующий пример - правильное использование элемента br:

<p>P. Sherman<br>
42 Wallaby Way<br>
Sydney</p>
Элементы

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

Следующие примеры являются несоответствующими, поскольку они злоупотребляют элементом br:

<p><a ...>34 comments.</a><br>
<a ...>Add a comment.</a></p>
<p><label>Name: <input name="name"></label><br>
<label>Address: <input name="address"></label></p>
     

Вот альтернативы вышесказанному, которые верны:

<p><a ...>34 comments.</a></p>
<p><a ...>Add a comment.</a></p>

<p><label>Name: <input name="name"></label></p>
<p><label>Address: <input name="address"></label></p>

Таким образом, использование <BR> вместо полей CSS для целей макета всегда было недооценено, по крайней мере, теми, кто написал спецификации.

Ответ 2

Зависит от того, хотите ли вы работать с высотой линии или маржи/дополнением.