XHTML DTD

From http://www.w3schools.com (Copyright Refsnes Data)

# XHTML DTD

The most common DTD is XHTML Transitional.

## <!DOCTYPE> Is Mandatory

An XHTML document consists of three main parts:

- the DOCTYPE declaration
- the <head> section
- the <body> section

The basic document structure is:

    <!DOCTYPE ...>
    <html>
    <head>
    <title>... </title>
    </head>
    <body> ... </body>
    </html>

Note: The DOCTYPE declaration is always the first line in an XHTML document!

## An XHTML Example

This is a simple (minimal) XHTML document:

    <!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html>
    <head>
    <title>simple document</title>
    </head>
    <body>
    <p>a simple paragraph</p>
    </body>
    </html>

The DOCTYPE declaration above defines the document type. The rest of the document looks like HTML.

## Document Type Definitions (DTD)

- A DTD specifies the syntax of a web page in SGML
- DTDs are used by SGML applications, such as HTML, to specify rules for documents of a particular type, including a set of elements and entity declarations
- An XHTML DTD describes in precise, computer-readable language, the allowed syntax of XHTML markup

There are three XHTML DTDs:

- STRICT
- TRANSITIONAL
- FRAMESET

### XHTML 1.0 Strict

    <!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Use the strict DOCTYPE when you want really clean markup, free of presentational clutter. Use together with CSS.

### XHTML 1.0 Transitional

    <!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Use the transitional DOCTYPE when you want to still use HTML's presentational features.

### XHTML 1.0 Frameset

    <!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

Use the frameset DOCTYPE when you want to use HTML Frames to split the web page into two or more frames.

From http://www.w3schools.com (Copyright Refsnes Data)