Ответы:
Тег всегда должен быть закрыт символом тега близко >
(если мы будем игнорировать определенные правила 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 почти всегда находятся в сети, браузеры фактически будут применять правила HTML, отличные от XHTML.
Подвести итоги:
<meta ...>
без/
<meta ... />
, сделайте это; это бесполезно, но не причиняет никакого вреда (кроме случаев, когда вы пытаетесь проверить, например, по типу документа HTML 4.01)./
до >
»). Просто подумал, что я уточню, чтобы не запутывать интернет еще большей путаницей. </pedant_alert>
:)
Это зависит от типа документа. HTML5 не требует закрытия. XHTML делает.
В HTML5 так называемые элементы void (элементы, не имеющие содержимого) не нуждаются в закрытии, поскольку они самозакрывающиеся. Но это все еще действует, если вы их закроете ..
Подробнее об этом здесь: void-elements