The <html>
tag is not required.
From the DTD:
<!ELEMENT HTML O O (%html.content;) -- document root element -->
The two O
s indicate that the start and end tags (respectively) are optional.
The element, on the other hand, is required (but the language is designed so that browsers can imply it).
Since a DOM consists of a tree of nodes, you have to have one node (the root element) for everything else to hang from, and that is the html element.
It is also a really useful place to stick a lang
attribute that will apply to the entire document.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…