Відповіді:
Тег завжди повинен бути закритий символом тега близько>
(якщо ми будемо ігнорувати певні правила SGML , які номінально застосовуються в не-XHTML HTML , але ніколи не були реалізовані в браузерах).
Що ви хочете запитати, - чи потрібно елементи закривати кінцевими тегами. Відповідь полягає в тому, що для не-XHTML HTML (включаючи HTML5 в серіалізації HTML), не потрібен або дозволений кінцевий тег meta
та link
елементи. На практиці, однак, браузери просто ігнорують явні кінцеві теги для них, а також /
раніше культовий культ >
, якщо ви їх використовуєте. І HTML5 робить цю вседозволеність правилом, навіть формально допускаючи /
серіалізацію в HTML.
У XHTML застосовуються правила XML, тому кожен без винятку елемент повинен мати як початковий тег, так і кінцевий тег, але той самий тег може використовуватися для обох ролей, якщо вміст елемента порожній, наприклад <meta name="foo" content="bar"/>
короткий для<meta name="foo" content="bar"></meta>
. Якщо ви порушуєте це, подаючи документ із типом вмісту XML (XHTML) у відповідний веб-переглядач, то ваш документ взагалі не відображається; натомість відображається повідомлення про помилку.
Якщо ви використовуєте XHTML-сервер із типом вмісту HTML ( Content-Type: text/html
), оскільки документи XHTML майже завжди є в Інтернеті, то браузери фактично застосовують правила, що не належать до XHTML HTML.
Узагальнити:
<meta ...>
без/
<meta ... />
, зробіть це; це не корисно, але не заподіює шкоди (за винятком випадків, коли ви намагаєтесь перевірити, наприклад, щодо вчення HTML 4.01)./
раніше >
"). Я просто подумав, що я проясню, щоб не заплутати Інтернет з більшою плутаниною. </pedant_alert>
:)
Це залежить від вчення. HTML5 не потрібно закривати. XHTML робить.
У HTML5 так звані недійсні елементи (елементи, які не можуть мати вміст) не потребують закриття, оскільки вони самозакриваються. Але це все-таки дійсно, якщо ви їх закриєте ..
Детальніше про це читайте тут: void-elements