Joel Joel - 1 year ago 39
HTML Question

HTML Document type and XML namespace

I understand that in order to instruct the browser how to handle HTML page I need to specify a DOCTYPE... For a page that i built with HTML5 I used the following:

<!DOCTYPE html>


When i am viewing other sites that are using the same DOCTYPE, there is an additional definition inside the
<html>
tag, such as:

<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">


What does the xml namespace do that it is needed inside the HTML tag in addition to the DOCTYPE definition?

Thanks!

Joel

Answer Source

If the xmlns attribute is set, it's a XHTML (XHTML5) document.

This indicates a HTML5 document:

HTTP-Header Content-Type: text/html

<!DOCTYPE html>
<html>

And this indicates a XHTML5 document:

HTTP-Header Content-Type: application/xhtml+xml

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">

If the webpage is using XHTML5 an does not have the xmlns attribute, it wont be displayed properly (Firefox would display the XML-DOM instead of the page).