HTML 5: это сайт, <br/ "> или <br/" >?
Я пытался проверить другие ответы, но я все еще в замешательстве - особенно после просмотра справки по HTML 5 для W3schools.
Я думал, что HTML 4.01 должен был "позволять" одиночным тегам быть только <img>
и <br>
. Затем появился XHTML вместе с <img />
и <br />
(, где кто-то сказал, что есть место для старых браузеров).
Теперь мне интересно, как я должен форматировать свой код при работе с HTML 5.
Это <br>
, <br/>
или <br />
?
Ответы
Ответ 1
Просто <br>
достаточно.
Другие формы существуют для совместимости с XHTML; чтобы он мог писать тот же код, что и XHTML, и работать он также как HTML. Некоторые системы, генерирующие HTML, могут быть основаны на генераторах XML и, следовательно, не имеют возможности выводить только тег <br>
; если вы используете такую систему, отлично использовать <br/>
, это просто не обязательно, если вам не нужно это делать.
Тем не менее, очень немногие люди используют XHTML. Вы должны служить вашему контенту как application/xhtml+xml
для его интерпретации как XHTML, и это не будет работать в старых версиях IE - это также означает, что любая небольшая ошибка, которую вы делаете, будет препятствовать тому, чтобы ваша страница отображалась в браузерах, которые делают поддержка XHTML. Таким образом, большинство из того, что похоже на XHTML в Интернете, фактически обслуживается и интерпретируется как HTML. См. Обслуживание XHTML как text/html считается вредоносным для получения дополнительной информации.
Ответ 2
Я думаю, что эта цитата из HTML 5 Reference Draft дает ответ:
3.2.2.2 Пустые элементы
Термин void elements используется для обозначения элементов, которые должны быть пустыми. Эти требования применяются только к синтаксису HTML. В XHTML все такие элементы обрабатываются как обычные элементы, но должны быть помечены как пустые элементы.
Эти элементы запрещено содержать какой-либо контент вообще. В HTML эти элементы имеют только начальный тег. Может использоваться синтаксис самозакрывающегося тега. Конечный тег должен быть опущен, потому что элемент автоматически закрывается парсером.
Пример HTML:
Пустой элемент в синтаксисе HTML. Это не разрешено в синтаксисе XHTML.
<hr>
Пример:
Пустой элемент, использующий синтаксис самозакрывающихся тегов, совместимых с HTML- и X HTML-.
<hr/>
Пример XHTML:
Пустой элемент, использующий только синтаксис X HTML- с явным конечным тегом. Это недопустимо для пустых элементов в синтаксисе HTML.
<hr></hr>
Ответ 3
XML не позволяет оставить теги открытыми, так что делает <br>
немного хуже, чем два других. Два других примерно эквивалентны второму (<br/>
), предпочтительному для совместимости со старыми браузерами. На самом деле, пробел перед /
предпочтителен для совместимости, но я думаю, что это имеет смысл только для тегов, которые имеют атрибуты. Так что я бы сказал, <br/>
или <br/>
, в зависимости от вашей эстетики.
Подводя итог: все три действительны с первым (<br>
), который является немного менее "переносимым".
Изменить: Теперь, когда мы все без ума от спецификаций, я думаю, что стоит отметить, что в соответствии с dev.w3.org:
Начальные теги состоят из следующих частей, в точно следующем порядке:
- Символ "<".
- Элементы тега name.
- По желанию, один или несколько атрибутов, каждому из которых должен предшествовать один или несколько пробелов.
- При желании один или несколько пробелов.
- Необязательно, символ "/", который может присутствовать только в том случае, если элемент является пустым элементом.
- Символ ">".
Ответ 4
В HTML (до HTML 4): используйте <br>
В HTML 5: <br>
является предпочтительным, но <br/>
и <br />
также приемлемы
В XHTML: <br />
является предпочтительным. Можно также использовать <br/>
или <br></br>
Примечания:
-
<br></br>
недействителен в HTML 5, он будет рассматриваться как два разрыва строки.
- XHTML чувствителен к регистру, HTML не чувствителен к регистру.
- Для обратной совместимости некоторые старые браузеры будут анализировать XHTML как HTML и работать с ошибкой
<br/>
, но не <br />
Ссылка:
Ответ 5
В соответствии с spec ожидаемая форма <br>
для HTML 5, но допускается закрытие косой черты.
Ответ 6
XML требует, чтобы все теги имели соответствующий закрывающий тег. Таким образом, существует специальный короткий синтаксис для тегов без внутреннего содержимого.
HTML5 не является XML, поэтому он не должен представлять такого требования. Также не HTML 4.01.
Например, в спецификации HTML5 все примеры с тегом br
используют синтаксис <br>
, а не <br/>
.
UPD На самом деле, <br/>
разрешено в HTML5. 9.1.2.1, 7.
Ответ 7
Я бы рекомендовал использовать <br/>
по следующим причинам:
1) Текстовые и XML-редакторы, которые выделяют синтаксис XML разными цветами, будут правильно выделяться с помощью <br/>
но это не всегда так, если вы используете <br>
2) <br/>
обратно совместим с XHTML, а правильно сформированный HTML (т.е. XHTML) часто проще проверить на наличие ошибок и отладки.
3) Некоторые старые парсеры и некоторые спецификации кодирования требуют пробела перед закрывающей косой чертой (т. <br/>
вместо <br/>
), например, спецификация кодирования плагина WordPress: http://make.wordpress.org/core/справочник/кодирования-стандарты/html/
По моему опыту, я никогда не сталкивался с ситуацией, когда использование <br/>
проблематично, однако во многих случаях <br/>
или особенно <br>
может быть проблематично в старых браузерах и инструментах.
Ответ 8
Если вы заинтересованы в сопоставимости (не совместимости, но сопоставимости), тогда я бы придерживался <br />
.
В противном случае <br>
в порядке.
Ответ 9
Оба <br>
и <br />
допустимы в HTML5, но в духе HTML следует использовать <br>
. HTML5 позволяет закрывать косые черты, чтобы быть более совместимыми с документами, которые ранее были HTML 4.01 и XHTML 1.0, что облегчает переход к HTML5. Конечно, <br/>
также приемлемо, но чтобы быть совместимым с некоторыми более старыми браузерами, перед закрывающей косой чертой должно быть пробел (/
).
Ответ 10
-
Если вы выводите HTML на обычный веб-сайт, вы можете использовать <br>
или <br/>
, оба действительны в любое время, когда вы используете HTML5 как text/html.
-
Если вы используете HTML5 как XHTML (то есть приложение типа контента /xhtml + xml с объявлением XML), вы должны использовать самозакрывающийся тег: <br/>
.
Если у вас нет некоторых браузеров, вы можете отказаться от предоставления своей страницы (особенно в Firefox очень строгий перевод только допустимых страниц xhtml + xml).
Как отмечено в 1. <br/>
также справедливо для HTML5, который создается как XML, но служит как обычный текст /html без объявления XML (например, из XSL Transform, которая генерирует веб-страницы или что-то похожее).
Чтобы устранить путаницу: помещая пробел, прежде чем косая черта не требуется в HTML5, и не имеет никакого значения, как страница отображается (если кто-нибудь может привести пример, я отступлю это, но я не знаю, t верьте, что это правда, но IE, безусловно, делает много других нечетных вещей со всеми формами тегов <br>
).
Отличный валидатор в http://validator.w3.org действительно полезен для проверки того, что действительно (хотя я не уверен, что вы можете положиться на него, чтобы проверить тип содержимого).
Ответ 11
Оба <br>
и <br/>
будут делать все, но я предпочитаю <br/>
, потому что это немного логичнее. Логично ожидать закрывающий тег всякий раз, когда есть открывающий тег. Поэтому ваш код немного легче читать, если вы не используете открывающий тег, когда не будет закрывающего тега.
Все браузеры (кроме, возможно, очень старых, которые не имеют значения) будут отображаться точно так же. Однако <br>
не является xHTML-уступчивым.
Ответ 12
<br>
и <br/>
визуализировать по-разному. Некоторые браузеры интерпретируют <br/>
как <br></br>
и вставляют два разрыва строки
Ответ 13
<br>
достаточно, но в XHTML <br/>
предпочтительнее согласно WHATWG и W3C.
Цитировать раздел 8.1.2.1 из HTML 5.2 Рекомендация W3C, 14 декабря 2017 г.
Начальные теги должны иметь следующий формат:
...
-
После атрибутов или после имени тега, если атрибутов нет, может быть один или несколько пробелов. (За некоторыми атрибутами должен следовать пробел. См. §8.1.2.3 Атрибуты ниже.)
-
Затем, если элемент является одним из пустых элементов, или если элемент является сторонним элементом, тогда может быть один символ SOLIDUS U + 002F (/). Этот символ не влияет на пустые элементы, но для внешних элементов он помечает начальный тег как самозакрывающийся.
Если вы используете Dreamweaver CS6, он будет автоматически заполнен как <br/>
.
Чтобы проверить ваш HTML файл на W3C, смотрите: http://validator.w3.org/
Ответ 14
При проверке этого вопроса действительно зависит от того, с чем !DOCTYPE
вы пытаетесь получить проверку.
Мой личный фаворит 4.01 Trans
, где я просто использую <br/>
, и он очищает предупреждения и ошибки, которые могут появиться во время проверки
Strict - гораздо более сложный зверь, он HATES "SHORTTAGS"
и буквально хочет только <br></br>
В HTML5
или в "LAX" мира кода действительно нет правильного ответа, потому что он detects every example you put up
там как правильный......
В конце концов, я думаю, что все, что имеет значение is what validation YOU PREFER
или the person that you are working for prefers
... с движением lackadaisical
в строгости кода в HTML5
, мы видим некоторые ОЧЕНЬ ЛАЗИРОВАННЫЕ КОДЫ
Ответ 15
ИМХО, лучше использовать обычную нотацию (<br/>
) вместо прощающей нотации (<br>
) по следующим причинам:
консистенция
В вашем HTML, вероятно, некоторые SVG и SVG поддерживают только стандартную нотацию (например, <rect/>
).
Hackability
Это не тот случай, когда фреймворки, такие как React и NativeScript, используют нотацию XML.
Ваш код разметки будет легче анализировать.
ясность
Обычную нотацию легче читать и понимать, даже поздно ночью.
Характеристики
Оба <br>
и <br/>
являются действительными HTML - теги.
Заключение
Если вы используете полноценный текстовый редактор, настройте его для использования обычной нотации (которая называется XHTML Emmet).
Например, в Visual Studio Code вам просто нужно добавить следующую строку в свои настройки:
"emmet.syntaxProfiles": {"html": "xhtml"}
Ответ 16
Ну, все, что я знаю, это то, что <br />
дает разрыв с белой строкой, а <br>
просто дает перерыв в некоторых случаях. Это случилось со мной, когда я настраивал IPN- script (PHP) и отправлял письма и проверял для него папку "Входящие". Не знаю, почему, но я получил сообщение, чтобы выглядеть аккуратно, используя <br /> and <br>
Посмотрите на почту здесь: http://snag.gy/cLxUa.jpg
Первые два раздела текста разделяются на <br />
, поэтому строки пробелов, последние три строки текста внизу и в последнем разделе разделяются символом <br>
и просто дают новую строку.
Ответ 17
В HTML <br>
и в XHTML <br/>
.
Я предлагаю вам использовать <br/>
.
Ответ 18
Как и многие другие, допустимы как <br>
, так и <br/>
.
Я думаю, что компромисс - это лучшая читаемость и обратная совместимость <br/>
по сравнению с отправкой одного меньшего символа конечным пользователям с <br>
.
И поскольку Google использует <br>
, так будет я.
(Конечно, имейте в виду, что они могут мне обслуживать <br>
, потому что я использую Chrome, который, как они знают, поддерживает его. В IE они все еще могут обслуживать <br/>
)
Ответ 19
<br>
работает отлично. Более строгие версии, такие как XHTML, требуют добавления закрывающих и действительно старых версий HTML, которые не включают DOCTYPE
make <br>
непустой тег, например <br></br>
.
Сумма: <br>
в порядке. Другие тоже просто прекрасны.
Ответ 20
Большинство случаев в HTML, теги находятся в паре. Но для разрыва строки вам не нужны пары тегов. Поэтому, чтобы указать это, HTML использует формат <br/>
. <br/>
является правильным. Используйте этот формат.
<br>
тег не имеет закрывающего тега в HTML В XHTML, то <br>
тег должен быть надлежащим образом закрыты, например: <br/>
В XML каждый тег должен быть закрыт. XHTML - это расширение XML, поэтому для правильного XHTML должны соблюдаться все правила XML. Следовательно, даже пустые теги (узлы без дочерних узлов), такие как
должны быть закрыты. XML имеет короткую форму, называемую самозакрывающимися тегами для пустых узлов. Вы можете написать <br></br> as <br/>
. Следовательно, в XHTML <br/>
используется.
HTML очень мягкий в этом отношении, и такого правила нет. Таким образом, в HTML пустые узлы, такие как <br> <hr> <meta>
т.д., Записываются без закрытия косой черты.
HTML
<br>
<hr>
<meta name="keywords" content="">
<link rel="canonical" href="http://www.google.com/">
XHTML
<br />
<hr />
<meta name="keywords" content="" />
<link rel="canonical" href="http://www.google.com/" />
Не все теги могут быть закрыты самостоятельно. Например, тегом типа <script src="jQuery.min.js"/>
не разрешено XHTML DTD.
Ответ 21
В HTML5 слэш больше не нужен:
<br>
, <hr>
Ответ 22
Ummm..... кто-нибудь знает одного поставщика, пользователя или агента браузера, который когда-либо следил за спецификациями W3C 100%??? Поэтому, если HTML5 говорит, что он поддерживает все три версии элемента break, вы можете поспорить, что поставщики поддерживают те же самые и даже более sloppier-версии!
Единственное, что имеет значение в этих дискуссиях, - это ПОСТОЯННО использовать кодирование, которое также, по возможности, соответствует спецификациям XML, а также спецификациям HTML. Это означает, что вы должны использовать правильную XML-версию тега break и поощрять всю свою команду делать то же самое:
<br />
Тот же формат пространства-косой черты должен применяться для тегов img, a, hr и meta в вашем коде. Зачем? Потому что:
- Его обратная совместимость со старыми пользовательскими агентами/браузерами XHTML
- Браузер поставщики поддерживают версию XML в любом случае, так что спецификация HTML5 спорно.
- Небрежные реализации большинства пользовательских агентов сегодня, в прошлом и в будущем, будут принимать его.
- Это позволяет вашей разметке быть сопоставимой с стандартами XML, если вам нужно вернуться к созданию документов XHTML/XML из вашей разметки.
- Это "хорошая практика кодирования" для ВСЕХ ВЕБ-РАЗРАБОТЧИКОВ, чтобы продолжать использовать надежные методы разметки, которые следуют за XML, включая кодирование во всех строчных, цитируемых атрибутах, экранированных символах XML и т.д. Почему? В будущем, если вам нужно переключиться на данные XML, вы автоматически кодируете и думаете в XML.
- Мы можем только надеяться, что в будущем World Wide Web мы уйдем от частных стандартов, внедренных в вендор, и вернемся к надежной, проверенной разметке, которая быстрее анализирует, быстрее перемещает данные по проводам и делает наш будущий Интернет более стандартизованный носитель с использованием XML.
Кроме того, в мире роботов и машин, где здесь, где у роботов нет одинаковых проблем с кодированием человеческого интерфейса, которые мы решаем для HTML5, они с радостью вернутся к системам данных XML и проанализируют такие веб-страницы пользовательского интерфейса намного быстрее, преобразованный в данные XML.
Ответ 23
I know that the form <br> will work, though I still find myself going back to the older formats.
Ответ 24
обычно используется в HTML, а
используется в XHTML, который имеет более строгий синтаксис. Элемент разрыва,
или же
, является одним из нескольких пустых элементов, которые также известны как самозакрывающиеся элементы. Закрывающий тег использует косую черту, чтобы указать, что он закрывает элемент.
Ответ 25
<br>
и <br />
визуализируются по-разному в некоторых браузерах, поэтому выбор одного из них не повредит вашему проекту, но ожидайте, что массовая находка... может повлиять на рендеринг страницы в некоторых браузерах, что может привести к дополнительной работе для себя или даже к смущению, если изменение ничего не повлияет на ваш тестовый браузер, но сломайте его в предпочтительном браузере ваших клиентов.
Я предпочитаю <br>
, так как это то, что я использовал с Erwise и Netscape Navigator (ранние веб-браузеры), но нет причин не выбирать <br />
. Это может быть полезно для некоторой предварительной обработки, сопоставимости и т.д.
Даже если ваш выбор сводится к предпочтению взгляда одного над другим, или вам (или вашему любимому редактору HTML, например Dreamweaver), может потребоваться, чтобы ваш код был совместимым с xml. Это зависит от вас.
Быстрая заметка:
Не путайте с br
, но, кроме того, вы можете также рассмотреть использование тегов wbr
в своем HTML: тег возможности разрыва слова, который указывает, где в тексте было бы нормально добавить разрыв строки.
Для дальнейшего чтения, пожалуйста, прочитайте спецификацию HTML5.
Ответ 26
Элементы без концевых тегов называются пустыми тегами. В html 4 и html 5 конечные теги не требуются и могут быть опущены.
В xhtml теги настолько строгие. Это означает, что нужно начинать с начального тега и заканчивать конечным тегом.