| [отпатрулированная версия] | [непроверенная версия] |
|
|
| |
{{HTML}} |
|
{{HTML}} |
| |
|
|
|
| − |
'''XHTML''' ({{lang-en|e'''x'''tensible '''h'''yper'''t'''ext '''m'''arkup '''l'''anguage}} — ''расширяемый язык гипертекстовой разметки'') — семейство [[Язык разметки|языков разметки]] [[Веб-страница|веб-страниц]] на основе [[XML]], повторяющих и расширяющих возможности [[HTML 4]]. Спецификации XHTML 1.0 и XHTML 1.1 являются рекомендациями [[W3C|консорциума Всемирной паутины]]. Развитие XHTML остановлено; новые версии XHTML не выпускаются; рекомендуется использовать [[HTML]]. |
+ |
'''XHTML''' ({{lang-en|e'''x'''tensible '''h'''yper'''t'''ext '''m'''arkup '''l'''anguage}} — ''расширяемый язык гипертекстовой разметки'') — семейство [[Язык разметки|языков разметки]] [[Веб-страница|веб-страниц]] на основе [[XML]], повторяющих и расширяющих возможности [[HTML 4]]. Спецификации XHTML 1.0 и XHTML 1.1 являются рекомендациями [[W3C|консорциума Всемирной паутины]]. Развитие XHTML остановлено; новые версии XHTML не выпускаются; рекомендуется{{кем}} использовать [[HTML]]. |
| |
|
|
|
| |
Главное отличие XHTML от HTML заключается в обработке документа. |
|
Главное отличие XHTML от HTML заключается в обработке документа. |
|
|
| |
HTML обладает множеством особенностей в процессе обработки и фактически перестал относиться к семейству SGML, что и закреплено в черновике спецификации HTML 5. |
|
HTML обладает множеством особенностей в процессе обработки и фактически перестал относиться к семейству SGML, что и закреплено в черновике спецификации HTML 5. |
| |
|
|
|
| − |
Браузер выбирает парсер для обработки документа на основании заголовка ''content-type'', полученного от сервера: |
+ |
Браузер выбирает [[Синтаксический анализатор|парсер]] для обработки документа на основании заголовка ''content-type'', полученного от сервера: |
| |
* HTML — text/html |
|
* HTML — text/html |
| |
* XHTML — application/xhtml+xml |
|
* XHTML — application/xhtml+xml |
|
|
| |
Согласно синтаксису XHTML: |
|
Согласно синтаксису XHTML: |
| |
* все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например, <code><img></code> или <code><br></code>), должны иметь на конце <code>/</code> (например, <code><br /></code>); |
|
* все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например, <code><img></code> или <code><br></code>), должны иметь на конце <code>/</code> (например, <code><br /></code>); |
| − |
* логические атрибуты записываются в развёрнутой форме. Например, следует писать <code><option selected="selected"></code> или <code><td nowrap="nowrap"></code>; |
+ |
* логические [[Атрибут (языки разметки)|атрибуты]] записываются в развёрнутой форме. Например, следует писать <code><option selected="selected"></code> или <code><td nowrap="nowrap"></code>; |
| |
* имена тегов и атрибутов должны быть записаны строчными буквами (например, <code><img alt="" /></code> вместо <code><IMG ALT="" /></code>); |
|
* имена тегов и атрибутов должны быть записаны строчными буквами (например, <code><img alt="" /></code> вместо <code><IMG ALT="" /></code>); |
| |
* XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в [[URL]], должны замещаться &lt; и &amp; соответственно. По рекомендации [[W3C]] браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор; |
|
* XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в [[URL]], должны замещаться &lt; и &amp; соответственно. По рекомендации [[W3C]] браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор; |
|
|
| |
* неправильное вложение элементов (конструкции вида <code><nowiki><strong><em> </strong></em></nowiki></code>); |
|
* неправильное вложение элементов (конструкции вида <code><nowiki><strong><em> </strong></em></nowiki></code>); |
| |
* неправильное использование [[Мнемоники в HTML|ссылок-мнемоник]] (например, <code><nowiki>&</nowiki></code> вместо <code><nowiki>&amp;</nowiki></code>); |
|
* неправильное использование [[Мнемоники в HTML|ссылок-мнемоник]] (например, <code><nowiki>&</nowiki></code> вместо <code><nowiki>&amp;</nowiki></code>); |
| − |
* написание тегов и/или атрибутов прописными буквами (<code><nowiki><DIV STYLE="…"></nowiki></code> вместо <code><nowiki><div style="..."></nowiki></code>); |
+ |
* написание тегов и/или атрибутов [[Прописная буква|прописными буквами]] вместо [[Строчная буква|строчных]] (<code><nowiki><DIV STYLE="…"></nowiki></code> вместо <code><nowiki><div style="..."></nowiki></code>); |
| |
* задание в теге <code><nowiki><!DOCTYPE …></nowiki></code> относительного пути к DTD-файлу (<code><nowiki>"DTD/xhtml11.dtd"</nowiki></code> вместо <code><nowiki>"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"</nowiki></code>). |
|
* задание в теге <code><nowiki><!DOCTYPE …></nowiki></code> относительного пути к DTD-файлу (<code><nowiki>"DTD/xhtml11.dtd"</nowiki></code> вместо <code><nowiki>"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"</nowiki></code>). |
| |
|
|
|
|
|
| |
* [[Haml]] |
|
* [[Haml]] |
| |
* [[SGML]] |
|
* [[SGML]] |
| |
+ |
*[[CHTML]] |
| |
+ |
*[[WML]] |
| |
|
|
|
| |
== Примечания == |
|
== Примечания == |