HTML <!doctype> Tag
<!doctype> tag is used for specifying which language and version the document is using. This is referred to as the document type declaration (DTD).
Technically speaking, the
<!doctype> tag does not represent an HTML element (there is no
<!doctype> element). However, it has been included here, as it is a required preamble to all HTML documents.
Also, it is usually referred to as the "doctype declaration" as opposed to the "doctype tag". Having said that, "tag" is a pretty loose term that tends to be applied quite generically across the web, so I've included it in the list of "HTML tags".
<!doctype> declaration is written as
<!doctype> (no end tag) with the language being specified inserted within the tag. The
<!doctype> declaration is case-insensitive (i.e. can be either uppercase or lowercase).
<!doctype> declaration must go right at the top of the page, before any other HTML code.
Differences Between HTML 4 & HTML 5
The main difference between HTML 4 and HTML5 is that HTML 4 requires a URL reference to a DTD (Document Type Definition) to be provided that specifies the language and its exact version. HTML5 doesn't require the DTD to be specified.
The <!doctype> tag is mostly useless in HTML5, because HTML5 does not require a reference to a DTD. However, for legacy reasons, the HTML5 specification recommends including the <!doctype> declaration at the top of all HTML documents. Therefore, you can use a value of
html within the
To see more detail on the two versions see HTML5
<!doctype> Tag and HTML4
<!doctype> Tag. Also check out the links to the official specifications below.
You may also be interested in XML
<!doctype> which discusses doctype declarations in XML documents (which includes XHTML documents).
For more details about the
<!doctype> tag, see HTML5
<!doctype> Tag and HTML4
Here are the official specifications for the
- HTML5 Specification (W3C)
- HTML Living Standard (WHATWG)
- Current W3C Draft (the next version that is currently being worked on)
- HTML 4 (W3C)
What's the Difference?
W3C creates "snapshot" specifications that don't change once defined. So the HTML5 specification won't change once it becomes an official recommendation. WHATWG on the other hand, develops a "living standard" that is updated on a regular basis. In general, you will probably find that the HTML living standard will be more closely aligned to the current W3C draft than to the HTML5 specification.