Klauzula DOCTYPE, znajdująca się w nagłówku pliku .html definiuje jak przeglądarka ma interpretować kod zawarty w pliku. Obecnie używa się głównie trzech standardów:

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

    Standard ten jest przejściowy – używany głównie przy modernizacji istniejących stron. Akceptuje on to, co dziś określa się jako zły styl kodowania – używanie tagu <font>, layout w formie tabel itd.

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

    Standard ten jest najlepszym wyborem dla nowej strony. Jest ściśle kompatybilny z wytycznymi XHTML 1.0.

  • XHTML 1.1
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

    Standard nowszy niż XHTML 1.0, ale z tego względu nie jest obsługiwany poprawnie przez wszystkie przeglądarki.

Wybór standardu jest sprawą drugorzędną. Najważniejsze, by wybrać JAKIKOLWIEK z nich, bo inaczej przeglądarka wyświetli naszą stronę w tzw. quirks mode. A to oznacza dla nas różną interpretację kodu, czyli różny wygląd w różnych przeglądarkach.