Что значитделать? - PullRequest
       6

Что значитделать?

43 голосов
/ 08 октября 2011

Что делает этот тег?

<!doctype html>

Что я вижу, так это то, что с этим тегом мой HTML ведет себя иначе, чем без него. Как узнать, нужен ли мне этот тег?

Ответы [ 6 ]

110 голосов
/ 08 октября 2011

Это неотъемлемая часть HTML, как определено в спецификации :

8.1.1. DOCTYPE

DOCTYPE - обязательная преамбула.

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


Изменить, чтобы добавить:

Что делает этот ремень безопасности?

Seatbelt image

Что я вижу, так это то, что с этим ремнем безопасности моя машина ведет себя так же, как и без него. Как узнать, нужен ли мне этот ремень безопасности?

Вы не будете знать, понадобится ли вам это, пока что-то пойдет не так, и у вас его не будет.

18 голосов
/ 08 октября 2011
DOCTYPE Declaration is the abbreviation for Document Type Declaration (DTD).

Декларация DOCTYPE (DTD или декларация типа документа) делает несколько вещей:

  1. При проведении проверочного HTML-тестирования на веб-странице он сообщает валидатору HTML (HyperText Markup Language), какой версии стандарта (X) HTML должна соответствовать кодировка веб-страницы. Когда вы проверяете свою веб-страницу, средство проверки HTML проверяет кодировку на соответствие применимому стандарту, а затем сообщает, какие части кода не прошли проверку HTML (не соответствуют).

  2. Сообщает браузеру, как отображать страницу в режиме соответствия стандартам.

Если кодирование веб-страницы не включает декларацию DOCTYPE (DTD или декларацию типа документа) или это сделано неправильно:

  1. Вы не сможете использовать средство проверки HTML (язык разметки гипертекста) для проверки кодировки страницы. Для проверки HTML требуется объявление DOCTYPE.

  2. Браузер, отображающий веб-страницу, будет обрабатывать кодирование в режиме Quirks.

  3. Таблица стилей может быть реализована не так, как планировалось.

Какой DOCTYPE вы должны использовать?

Если вы новичок в HTML (HyperText Markup Language), я бы предложил вам использовать объявление HTML 4.01 Transitional. Для новичка гораздо сложнее выполнять проверку HTML . Вы также можете использовать это объявление, если знаете, что у вашей аудитории не будет браузера, поддерживающего CSS (каскадные таблицы стилей).

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

Это объявление DOCTYPE по-прежнему допускает элементы и атрибуты представления, которые должны быть в таблице стилей.


Если вы хотите научиться писать код для подготовки к будущему, но все еще не готовы к XHTML, тогда вы должны использовать строгое объявление.

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

С этим объявлением все атрибуты представления перемещаются в таблицу стилей.

Полный список объявлений DOCTYPE (DTD) доступен по адресу Список действительных DTD , которые вы можете использовать в своем документе.

5 голосов
/ 08 октября 2011

Объявление doctype должно быть самой первой вещью в документе HTML перед тегом.

Объявление doctype не является тегом HTML;это инструкция для веб-браузера о том, на какой версии языка разметки написана страница.

Объявление doctype относится к определению типа документа (DTD).DTD определяет правила для языка разметки, чтобы браузеры правильно отображали содержимое.

Цитата здесь: http://www.w3schools.com/tags/tag_doctype.asp

:)

3 голосов
/ 30 марта 2015

Объявление Doctype запускает стандартный режим в вашем браузере и должно всегда использоваться.Следует всегда избегать режима причуд.

1 голос
/ 13 июля 2016

Война браузеров и 2 режима

Чтобы понять значение DOCTYPE, давайте углубимся в историю, начиная со времен войн браузеров. В те дни веб-страницы были написаны в двух разных версиях для поддержки Internet Explorer & Netscape Navigator.

Но затем W3C взял на себя определение веб-стандартов. Но, к сожалению, браузеры с новыми стандартами не смогли отобразить веб-страницы, созданные для устаревших браузеров. Итак, для поддержки сайта, созданного для устаревших браузеров, QUIRK MODE был представлен. В котором браузер предполагает, что вы написали устаревшую недействительную разметку и код в соответствии с удручающими отраслевыми нормами конца 1990-х годов.

Чтобы отличить эти веб-сайты от новых, был добавлен DOCTYPE, который дал браузеру сигнал о том, что эта веб-страница должна отображаться в STANDARD MODE.

HTML5 && HTML 4.01

До HTML5 html был основан на SGML, что требовало определения типа документа для определения правил и грамматики разметки. Таким образом, у doctype была другая информация об определении типа документа (DTD).

Однако с введением HTML5 DOCTYPE - единственное, что необходимо для включения STANDARD MODE.

0 голосов
/ 05 марта 2018

Для простоты: <!DOCTYPE HTML> утверждает, что код является HTML.

...