В спецификации HTML5 некоторые правила разметки были ослаблены. В частности, использование элементов <html>
, <head>
и <body>
уже не является обязательным для разметки HTML5. Тем не менее браузер все равно считает, что они существуют, в чем можно убедиться, просмотрев разметку веб-страницы в Mоzilla Firebug или в Google Chrome Inspector.
Эти элементы всегда «подразумеваются», но если они будут использоваться в таблице CSS-стилей или в JavaScript-сценариях, то их надо прописывать в явном виде.
Также разрешается не использовать закрывающую обратную косую черту в элементах без содержимого, их список можно увидеть в нижеприведенной таблице.
1. Элемент <html>
Начальный тег <html>
может быть опущен, если сразу за тегом не идет комментарий:
<!DOCTYPE HTML> <head> <title>Hello</title> </head> <body> <p>Welcome to this example.</p> </body>
Закрывающий тег </html>
также может быть опущен, если перед ним нет комментария.
2. Элемент <head>
Начальный тег <head>
может быть опущен, если элемент <head>
пуст, или если сразу после него идет другой HTML-элемент.
Закрывающий тег </head>
может быть опущен, если он не следует сразу за пробелом или за комментарием.
<!DOCTYPE HTML> <title>Hello</title> <body> <p>Welcome to this example.</p> </body>
3. Элемент <body>
Начальный тег <body>
может быть опущен, если элемент пуст, или если первое, что внутри элемента не является пробелом или комментарием, за исключением случаев, когда первое, что идет за тегом <body>
являются элементы <meta>
, <link>
, <script>
или <style>
.
Закрывающий тег </body>
может быть опущен, если перед ним нет комментария.
<!DOCTYPE HTML> <title>Hello</title> <p>Welcome to this example.</p>
4. Элемент <li>
Закрывающий тег </li>
может быть опущен, если элемент <li>
сразу следует за другим элементом <li>
, или если больше нет содержания в элементе, в который вложен тег.
5. Элементы <dt> и <dd>
Закрывающий тег </dt>
может быть опущен, если элемент <dt>
следует сразу за еще одним элементом <dt>
или <dd>
.
Закрывающий тег </dd>
может быть опущен, если элемент <dd>
следует сразу за еще одним элементом <dd>
или <dt>
, или если больше нет содержания в элементе, в который вложен тег.
6. Элемент <p>
Закрывающий тег </p>
может быть опущен, если <p>
следует сразу за любым из перечисленных элементов:
address, article, aside, blockquote, dir, div, dl, fieldset, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, hr, menu, nav, ol, p, pre, section, table, ul
, или если больше нет содержания в элементе, в который вложен тег <p>
, или родительским элементом не является тег <a>
.
7. Элементы <rt> и <rp>
Закрывающий тег </rt>
может быть опущен, если элемент <rt>
следует сразу за еще одним элементом <rt>
или <rp>
, или если больше нет содержания в элементе, в который вложен тег.
Закрывающий тег </rp>
может быть опущен, если элемент <rp>
следует сразу за еще одним <rp>
или <rt>
элементом, или если больше нет содержания в элементе, в который вложен тег.
8. Элементы <optgroup> и <option>
Закрывающий тег </optgroup>
может быть опущен, если элемент <optgroup>
следует сразу за еще одним элементом <optgroup>
, или если нет больше содержания в родительском элементе.
Закрывающий тег </option>
может быть опущен, если элемент <option>
следует сразу за еще одним элементом <option>
, или если он идет сразу после <optgroup>
, или если нет больше содержания в родительском элементе.
9. Элемент <colgroup>
Начальный тег элемента <colgroup>
может быть опущен, за элементом <colgroup>
сразу идет элемент <col>
, и если перед элементом непосредственно не предшествует другой элемент <colgroup>
, закрывающий тег которого был опущен. (Он не может быть опущен, если элемент пустой.)
10. Элементы <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>
, или, если больше нет содержания в родительском элементе.
<table> <caption>37547 TEE Electric Powered Rail Car Train Functions (Abbreviated) <colgroup><col><col><col> <thead> <tr><th>Function<th>Control Unit<th>Central Station <tbody> <tr><td>Headlight<td>✔<td>✔ <tr><td>Interior Lights<td>✔<td>✔ <tr><td>Electric locomotive operating sounds<td>✔<td>✔ <tr><td>Engineer's cab lighting<td><td>✔ <tr><td>Station Announcements - Swiss<td><td>✔ </table>
area | Запрещен | Разрешен | |
base | Запрещен | Разрешен | |
body | Необязательный | Необязательный | |
br | Запрещен | Разрешен | |
col | Запрещен | Разрешен | |
colgroup | Необязательный | ||
dd | Необязательный | ||
dt | Необязательный | ||
head | Необязательный | Необязательный | |
hr | Запрещен | Разрешен | |
html | Необязательный | Необязательный | |
img | Запрещен | Разрешен | |
input | Запрещен | Разрешен | |
li | Необязательный | ||
link | Запрещен | Разрешен | |
meta | Запрещен | Разрешен | |
option | Необязательный | ||
p | Необязательный | ||
param | Запрещен | Разрешен | |
tbody | Необязательный | Необязательный | |
td | Необязательный | ||
tfoot | Необязательный | ||
th | Необязательный | ||
thead | Необязательный | ||
tr | Необязательный |