HTML

HTML-KOULUTUSTA VUONNA 2025!

Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi heti! Koulutuksen järjestää asiantuntijasi Koulutus- ja konsultointipalvelu KK Mediat.

HTML:n DTD-määrittely (DOCTYPE)

DTD-määrittely aloittaa HTML-dokumentin

HTML-dokumentin ensimmäinen rivi on yleensä:


<!DOCTYPE html>

Tätä kutsutaan dokumenttityypin määrittelyksi (DTD). HTML5:ssä DOCTYPE ei enää viittaa varsinaiseen DTD:hen, vaan ilmoittaa selaimelle, että kyseessä on HTML5-dokumentti.

Mikä on DTD

DTD eli dokumenttityypin määrittely kertoo selaimelle, minkä tyyppisestä rakenteellisesta dokumentista on kyse ja minkä HTML-version sääntöjä sen rakenteessa noudatetaan. Se määrittää muun muassa seuraavat asiat:

Miksi DTD määrittelyn sisällyttäminen dokumentin alkuun on tärkeää?

Kun käytät DTD-määrittelyä HTML-tiedostossa, selain käyttää nk. standardeihin perustuvaa Standards Mode esitystilaa. Tämä takaa dokumentille yhtenäisen ulkoasun ja toimivuuden eri selaimissa.

Ilman DTD-määrittelyä selain voi siirtyä niin kutsuttuun quirks mode-tilaan. Tällöin selaimen ensisijainen tavoite on esittää dokumentin sisältö edes jollakin tavalla - mikä johtaa mm. CSS:n poikkeavaan tulkintaan.

Monta HTML-versiota, monta erilaista DTD-määrittelyä

HTML5 teki DTD:stä yksinkertaisemman kuin koskaan. Yksi rivi riittää kertomaan selaimelle, että kyseessä on HTML5-dokumentti.


<!DOCTYPE html>

HTML:n vanhemmat versiot, kuten HTML4 ja XHTML sisältävät useita vaihtoehtoisia DTD-määrittelyjä - kaksi yleisintä vaihtoehtoa esitellään alla.

Strict-määrittely tarkoittaa tiukinta mahdollista määrittelyä. Se ei tue esimerkiksi HTML3.2:n esittelemiä font- tai center-elementtejä.


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


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
  "http://www.w3.org/TR/html4/strict.dtd">

Transitional määrittely on nk. siirtymäajan määrittely. Se sallii osan vanhentuneista HTML-elementeistä:


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

Vaikka XHTML ja HTML4 (ja sitä vanhemmat versiot) ovat olleet deprekoituja jo lukuisia vuosia, Internetissä on edelleen miljoonia vanhoja HTML-dokumentteja, joita selainten täytyy tukea. Tästä syystä myös vanhentuneiden DTD-tunnisteiden tunteminen, ja niiden syy-seuraus suhteet, on jokaisen web-kehittäjän perustaitoja.