Согласно spec , вы не должны закрывать тег, если он недействителен.Пустые элементы - это элементы, у которых нет данных между начальным тегом и конечным тегом;то есть все, что ему нужно, в атрибутах.Спецификация включает в себя список пустых элементов:
- area
- base
- br
- col
- command
- embed
- ч
- img
- input
- keygen
- link
- meta
- param
- source
- track
- wbr
Итак, ваше эмпирическое правило: может ли оно иметь что-то между началом и концома теги есть смысл?Если это так, он должен иметь конечный тег.
Однако существуют исключения , например, элементы, которые всегда находятся внутри контейнера, такие как <li>
, <option>
, <optgroup>
, <tr>
, <<code>td> и т. д. при желании конечный тег может быть опущен, если сразу за ним следует другой начальный тег того же типа или конечный тег для контейнера.