Three DTDs for XHTML
XHTML comes in three flavors, depending on which DTD you choose:
- Strict
This is the W3C’s recommended form of XHTML. This includes all the basic elements and attributes such as
pandclass. However, it does not include deprecated elements and attributes such asappletandcenter. It also forbids the use of presentational attributes such as thebodyelement’sbgcolor,vlink,link, andtext. These capabilities are provided by CSS instead. Strict XHTML is identified with thisDOCTYPEdeclaration:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd" >Example 7-2 uses this DTD.
- Transitional
This is a looser form of XHTML for when you can’t easily do without deprecated elements and attributes, such as
appletandbgcolor. It is identified with thisDOCTYPEdeclaration:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd" >- Frameset
This is the same as the transitional DTD except that it also allows frame-related elements, such as
framesetandiframe. It is identified with thisDOCTYPEdeclaration:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "DTD/xhtml1-frameset.dtd" >
All three DTDs use the same http://www.w3.org/1999/xhtml namespace. You should choose the strict DTD unless you’ve got a specific reason to use another one.