Doctype: welke moet ik kiezen?

Een doctype behoort tot de basis van een webpagina. Hoewel een doctype essentieel is voor een voorspelbare weergave van je webpagina, wordt deze door veel mensen niet of verkeerd gebruikt. In deel 1 over doctype lees je wat je aan een doctype hebt; in deel 2 over doctype: welk doctype moet ik kiezen?

Inhoud

De valide doctypes

Als je de broncodes van websites bekijkt, zijn er talloze doctypes in de omloop. De lijst met valide doctypes is echter beperkt. Voor webpagina’s komt het in de praktijk neer op de volgende doctypes:

  • Drie HTML 4.01 doctypes (Transitional, Strict, Frameset).
  • Drie XHTML 1.0 doctypes (Transitional, Strict, Frameset).
  • Eén XHTML 1.1 doctype.

De afvallers

Wanneer je geen frames gebruikt, vallen er al weer twee af uit de lijst. Frames zijn namelijk niet aan te raden. Een Transitional doctype wordt gebruikt voor sites in een overgangsfase, bijvoorbeeld voor sites die een contentmanagementsysteem gebruiken dat verouderde HTML levert. Overstappen op een Strict-doctype kan in zulke gevallen ongewenste bijwerkingen in browserweergave hebben. Nieuwe sites hebben dit probleem niet. Daar zou je dan ook geen Transitional-doctype moeten gebruiken. In veruit de meeste gevallen zijn er dan ook geen goede redenen meer om een Transitional doctype te blijven kiezen. Daarmee houden we de volgende doctypes over:

  • Eén HTML 4.01 doctype (Strict).
  • Eén XHTML 1.0 doctype (Strict).
  • Eén XHTML 1.1 doctype.

Wil je dat bezoekers met Internet Explorer (IE) jouw pagina’s nog steeds kunnen bekijken, dan kun je ook XHTML 1.1 vergeten; IE kan niet met (correct geserveerde) XHTML 1.1-pagina’s omgaan. Dit is ook het geval bij XHTML 1.0, maar daar is incorrect serveren nog toegestaan. Dan blijven er nog twee doctypes over:

HTML 4.01:

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

XHTML 1.0:

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

Rest de vraag: kies ik HTML of XHTML?

HTML of XHTML?


XHTML is nieuwer dan HTML en nieuwer is beter, toch? Dat valt te betwijfelen. Tussen 2003 en 2005 zijn veel websites inderdaad overgestapt op XHTML, maar daar begint men op terug te komen. Belangrijkste kritiekpunt is dat de meest gebruikte browser, IE, zelfs in versie 7 en versie 8 niet goed omgaat met XHTML. Sterker nog, als je IE XHTML voorlegt zoals XHTML bedoeld is, dan zie je een leeg scherm. Een mogelijke oplossing is om – in ieder geval voor IE – XHTML te serveren als HTML. Wanneer de server een IE-browser tegenkomt, dan geeft hij XHTML in een HTML-jasje mee; aan alle andere browsers levert hij échte XHTML. Dat kan echter ook weer problemen met zich meebrengen.

Sommigen vinden dat momenteel het serveren van XHTML geen nut heeft, aangezien 85% van de internetters met IE surft en het daarom in 85% van de gevallen niet werkt, zeker de komende jaren. Zij vinden dat je daarom beter een doctype kunt gebruiken waar alle browsers mee overweg kunnen, namelijk HTML 4.01 Strict. Anderen vinden dat je waar mogelijk XHTML zou moeten gebruiken (dus voor alle andere browsers behalve IE), bijvoorbeeld om vooruitgang op het web te voorspoedigen. Ook biedt XHTML uitbreidingsmogelijkheden; echter, voor veruit de meeste sitebouwers zullen die mogelijkheden van geen nut zijn. De keuze tussen HTML en XHTML komt dus eigenlijk neer op een persoonlijke voorkeur.

Conclusie

Van de talloze doctypes die je kunt vinden op internet, zijn er momenteel bij het bouwen van een nieuwe website meestal maar twee relevant: HTML 4.01 Strict en XHTML 1.0 Strict. Gezien de verwaarloosbare meerwaarde en het ontbreken van correcte XHTML-ondersteuning door IE ligt voor mij persoonlijk voor de hand om te kiezen voor HTML 4.01 Strict. Welke van de twee je ook kiest, het houden aan de specificaties van deze doctypes draagt bij aan de toegankelijkheid en vindbaarheid van je site en aan de overzichtelijkheid en duurzaamheid van de markup. Maar bovenal zorgt een correct doctype voor minder problemen met je layout. En wie wil er nou niet minder sitebouwproblemen?

  • Jan

    Dank je Roger. Goed stuk.., ga dankbaar gebruik van maken van je tips / opmerkingen. Groet, Jan.

  • Jan

    Oeps… die reacties zijn dan weer niet ‘even’ prettig leesbaar. Meer contrasterend kleurtje lettertype… graag :-) ;-)

  • http://frontaal.net Roger

    Ahh, inderdaad! Je bent de eerste die reacties plaatst, vandaar dat het me nog niet was opgevallen. Thnx voor de feedback! Heb het meteen aangepast.

  • http://www.djwmedia.nl Dylan Wempe

    Geachte, zeer goed uitgelegt mijn complimenten.

    Vriendelijke groeten
    DJW Media

  • http://frontaal.net Roger

    Bedankt voor je compliment!

  • Johan

    Heel erg goed uitgewerkt en de onderbouwing is ook subliem met de verschillende bronnen!

    HTML 4.01 Strict is het bij mij geworden ;)

    Vriendelijke groeten,
    Johan Petri
    The 360 Factory

  • http://frontaal.net Roger

    Leuk om te horen :) Overigens, mochten er reaguurders zijn die soortgelijke kwesties behandeld willen zien, dan hoor ik het graag.

  • http://henjohoeksma.nl Henjo

    Thanks. Het eerste normale artikel dat ik tegenkom en bij de tijds is…
    Hieruit kan ik eindelijk mijn conlusies trekken – na een hoop meningen en voorkeuren gelezen te hebben.
    html 4 strict – why not?

  • http://frontaal.net Roger

    Haha ja, goeie samenvatting!

  • http://myrtheroos.nl Mitsje

    Zelfs nu… 2009… Nog veel mensen die er wat aan hebben! :D

  • http://frontaal.net Roger

    Leuk om te horen! Wellicht dat ik het ooit nog kan aanvullen met HTML5, maar de verwachting is dat het tot 2012 kan duren voordat HTML5 enigszins klaar is voor gebruik. En de ontwikkeling van XHTML2 zal dit jaar stoppen. Dus veel zal er komende jaren nog niet veranderen…

  • http://www.printcenternieuwegein.nl Robbert Groenendijk

    In IE7 problemen met een floating DIV. Maar met een HTML Strict doctype ziet de site er uit zoals de bedoeling is.

    Thanx.