HTML Против XHTML
XHTML – это более строгая версия HTML, которая больше базируется на XML.
Что такое XHTML?
- XHTML — расшифровывается как EXtensible HyperText Markup Language
- XHTML — это более строгая версия HTML, которая больше базируется на XML
- XHTML — это HTML, определенный как программа XML
- XHTML — поддерживается всеми основными браузерами
Почему XHTML?
XML — это язык разметки, в котором все документы должны быть корректно размечены («хорошо сформированы»).
XHTML был разработан для того, чтобы сделать HTML более расширяемым и гибким при работе с другими форматами данных (такими как XML). Кроме того, браузеры обычно игнорируют ошибки в HTML‑страницах и стараются отобразить сайт даже при наличии ошибок в разметке. Поэтому XHTML предъявляет гораздо более строгие требования к обработке ошибок.
Если вы хотите изучать XML, прочитайте наш Учебник по XML.
Наиболее важные отличия от HTML
- <!DOCTYPE> является обязательным
- Атрибут xmlns в <html> является обязательным
- <html>, <head>, <title> и <body> являются обязательными
- Элементы всегда должны быть корректно вложены
- Элементы всегда должны быть закрыты
- Элементы всегда должны быть в нижнем регистре
- Имена атрибутов всегда должны быть в нижнем регистре
- Значения атрибутов всегда должны быть в кавычках
- Минимизация атрибутов запрещена
XHTML — <!DOCTYPE ....> является обязательным
Документ XHTML должен содержать объявление <!DOCTYPE>.
Также должны присутствовать элементы <html>, <head>, <title> и <body>, а атрибут xmlns в элементе <html> должен указывать пространство имён XML для документа.
Пример
Вот документ XHTML с минимумом необходимых тэгов:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title of document</title>
</head>
<body>
some content here...
</body>
</html>
Элементы XHTML должны быть корректно вложены
В XHTML элементы всегда должны быть правильно вложены друг в друга, например:
Правильно:
<b><i>Some text</i></b>
Неправильно:
<b><i>Some text</b></i>
Элементы XHTML всегда должны быть закрыты
В XHTML элементы всегда должны быть закрыты следующим образом:
Правильно:
<p>Это параграф</p>
<p>Это другой параграф</p>
Неправильно:
<p>Это параграф
<p>Это другой параграф
Пустые элементы XHTML всегда должны быть закрыты
В XHTML пустые элементы всегда должны быть закрыты следующим образом:
Правильно:
Обрыв: <br />
Горизонтальный разделитель: <hr />
Изображение: <img src="happy.gif" alt="Счастливое лицо" />
Неправильно:
Обрыв: <br>
Горизонтальный разделитель: <hr>
Изображение: <img src="happy.gif" alt="Счастливое лицо">
Элементы XHTML должны быть в нижнем регистре
В XHTML названия элементов всегда должны быть написаны строчными буквами, например:
Правильно:
<body>
<p>Это параграф</p>
</body>
Неправильно:
<BODY>
<P>Это параграф</P>
</BODY>
Имена атрибутов XHTML должны быть в нижнем регистре
В XHTML имена атрибутов всегда должны быть написаны строчными буквами, например:
Правильно:
<a href="https://w3schoolsua.github.io/html/">Посетите наш учебник по HTML</a>
Неправильно:
<a HREF="https://w3schoolsua.github.io/html/">Посетите наш учебник по HTML</a>
Значения атрибутов XHTML должны быть взяты в кавычки
В XHTML значения атрибутов всегда должны быть заключены в кавычки, например:
Правильно:
<a href="https://w3schoolsua.github.io/html/">Посетите наш учебник по HTML</a>
Неправильно:
<a href=https://w3schoolsua.github.io/html/>Посетите наш учебник по HTML</a>
Минимизация атрибутов XHTML запрещена
В XHTML минимизация атрибутов не допускается:
Правильно:
<input type="checkbox" name="vehicle" value="car" checked="checked" />
<input type="text" name="lastname" disabled="disabled" />
Неправильно:
<input type="checkbox" name="vehicle" value="car" checked />
<input type="text" name="lastname" disabled />
