Какую декларацию DOCTYPE мы должны использовать? - PullRequest
10 голосов
/ 22 октября 2010

Я прочитал несколько книг по объявлению DOCTYPE и трем вариантам: строгий, переходный и набор фреймов.

Но я до сих пор не могу полностью понять их различие и действительно не уверен, какой вариант я должен использовать при создании моего сайта. В частности, я не понимаю разницы между строгим и переходным.

Не могли бы вы посоветовать мне?

Ответы [ 3 ]

8 голосов
/ 22 октября 2010

Набор фреймов предназначен для документов, которые определяют наборы фреймов (документы, не входящие в набор фреймов, затем загружаются в фреймы). Рамки, как правило, плохой выбор дизайна, которые вызывают больше проблем, чем решают.

Transitional - это, более или менее, Strict плюс вещи, которые вы не должны использовать (в основном потому, что они были заменены CSS). Есть пара исключений, например, атрибут start, который имеет несколько веских аргументов в поддержку его использования (но не часто полезный).

Строгий является ядром HTML и, как правило, является лучшим выбором.

HTML 4.01 - последняя, ​​законченная версия HTML.

XHTML 1.0 - это HTML 4.01, выраженный в XML. Он не работает в Internet Explorer, если вы не притворяетесь, что это HTML (что допускает спецификация text / html).

XHTML 1.1 - это XHTML 1.0 Strict, плюс целевой атрибут плюс Ruby (не язык программирования), а также несколько других мелких изменений. Не существует спецификации, дающей согласие на то, что XHTML 1.1 - это HTML.

(Пять лет назад: HTML 5 - это черновая спецификация, которая может быть изменена, и многие интересные моменты не работают без резервного копирования JavaScript в большинстве используемых сегодня браузеров. В ней отсутствует зрелый инструмент проверки.

HTML 4.01, как правило, лучшая ставка, но XHTML 1.0 стоит рассмотреть, если у вас есть система инструментов XML в вашей издательской системе, а HTML 5 стоит рассмотреть, если вам нужно что-то добавить в нее и вы чувствуете риск жизни на кровоточащем краю стоит.

Вкратце: используйте HTML 4.01 Strict, если вы не знаете, зачем вам нужно что-то еще.)

С тех пор как этот ответ был изначально написан, HTML 5 стал стандартом с хорошей поддержкой браузеров и наборов инструментов. Это спецификация, наиболее тесно связанная с тем, как на самом деле работают браузеры. Сериализация XML доступна, если вам нужна поддержка XML.

Вкратце: используйте HTML 5: <!DOCTYPE html>.

2 голосов
/ 23 октября 2010

Используйте HTML5 DOCTYPE:

<!DOCTYPE HTML>

Все остальное старое и сломано.

HTML5> XHTML> HTML 4

Примечание. DOCTYPE полезен только для проверки вашего документа и для запуска режима, соответствующего большинству стандартов, в современных браузерах. Кроме этого, это ничего не стоит. Так что вы можете использовать самую современную версию (HTML5).

0 голосов
/ 23 октября 2010

Во-первых, вы используете HTML или XHTML?Я бы порекомендовал HTML - XHTML - мертвый стандарт.HTML5 - это будущее (хотя кто знает, когда наступит это будущее), поэтому я бы остановился на переходном HTML 4:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Это наиболее близкий и поддерживаемый тип документа HTML5.Вы можете использовать функции HTML5, такие как тег

...