Необязательные теги разметки в HTML5
Необязательные теги в HTML5. В новом стандарте HTML5 некоторые правила разметки были ослаблены. Например, <html>, <body>, <head> больше не являются обязательными тегами. Но даже если они будут отсутствовать, то браузер все равно считает что они присутствуют. Но если есть необходимость применять к данным тегам стили, то их необходимо указывать обязательно.
Тег <HTML>
Данный тег может быть опущен, но только в том случае если сразу за тегом не идет комментарий. Закрывающий тег </HTML> так же может быть опущен, если перед ним нет комментария.
Тег <HEAD>
Начальный тег <HEAD> может быть опущен, в том случае если он пуст, или после него сразу идет другой HTML элемент. Закрывающий тег </head>, так же может быть опущен, но в том случае если он не идет сразу за пробелом или комментарием.
Тег <BODY>
Открывающий тег <BODY> может быть опущен, если он пуст или первое что внутри элемента не является пробелом или комментарием. Исключение составляют случаи когда первое что идет за ним — это элементы <meta>, <link>, <script> или <style>.
Тег <li>
Закрывающий тег </li> может быть опущен, если элемент <li> сразу следует за другим элементом <li>, или если больше нет содержания в элементе, в который вложен тег.
Элементы <thead>, <tbody>, <tfoot>, <td>, <tr>
Закрывающий тег </thead> может быть опущен, если элемент <thead> следует сразу за <tbody> или <tfoot>.
Открывающий тег <tbody> может быть опущен, если за ним сразу идет элемент <tr>, и если перед элементом непосредственно не предшествует другой <tbody>, <thead>, или <tfoot>, закрывающий тег которого был опущен. (Он не может быть опущен, если элемент является пустым.)
Закрывающий тег </tbody> может быть опущен, если после элемента <tbody> сразу следует <tbody> или <tfoot>, или если больше нет содержания в родительском элементе.
Закрывающий тег </tfoot> может быть опущен, если элемент <tfoot> следует сразу же за <tbody>, или если больше нет содержания в родительском элементе.
Закрывающий тег </tr> может быть опущен, если элемент <tr> следует сразу же за еще одним элементом <tr>, или если больше нет содержания в родительском элементе.
Закрывающий тег </td> может быть опущен, если элемент <td> следует сразу же за еще одним элементом <td> или <th>, или, если нет больше содержания в родительском элементе.
Закрывающий тег </th> может быть опущен, если элемент <th> следует сразу же за <td> или <th>, или, если больше нет содержания в родительском элементе.