Тип документа

Я ничего не упомянул про самый первый элемент в листинге — <!DOCTYPE html>. Дело в том, что HTML — это подсемейство языков XML. И элемент <!DOCTYPE> не является в полным смысле тегом. Это указание для браузера, каким именно набором правил руководствоваться при интерпретации данного документа. Когда будете работать с чужими сайтами, наверняка встретятся один или несколько вариантов данного элемента из приведённых в таблице ниже:

DOCTYPE Описание
HTML 4.01
Допустимо не закрывать теги, например тег <p>, тег <li> и др. У значений параметров можно пропускать кавычки, например, будет валидна такая запись: <input type=text>.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> Строгий синтаксис HTML.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> Переходный синтаксис HTML.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> В HTML-документе применяются фреймы.
XHTML 1.0
Все теги должны закрываться, появляется понятие самозакрывающегося тега. Все спецсимволы типа & заменяются на «сущности»: & = &amp;, € = &euro; и др. Все значения параметров тегов должны быть в кавычках. Если в HTML 4.01 было допустимо написать <table class=table>, то теперь только так: <table class="table">
<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Строгий синтаксис XHTML.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> Переходный синтаксис XHTML.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> Документ написан на XHTML и содержит фреймы.
XHTML 1.1
В элементах <a> и <map>, атрибут name был удален в пользу атрибута id. Были удалены многие устаревшие теги и значения параметров тегов.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> Разработчики XHTML 1.1 предполагают, что он постепенно вытеснит HTML. Никакого деления на виды это определение не имеет, синтаксис один и подчиняется четким правилам.
HTML 5
Язык-наследник семейств языков разметки XHTML и HTML. Постоянно дорабатывается.
<!DOCTYPE html> Для всех документов.

Запоминать значения элемента <!DOCTYPE> не следует. Просто нужно иметь представление о подсемействах языка XML.