Portret van de webmaster Image Logo Portret van de webmeesteres Reageer per E-mail
Ontwerpen: deel 1 Ontwerpen: deel 2 Ontwerpen: deel 3

Home
Screenreaders
Inleiding
Webhosting
Een eigen domeinnaam
Publiceren
Ontwerpen: deel 1
Ontwerpen: deel 2
Ontwerpen: deel 3
Promotie (metatags.nl)
Interactie en Dynamiek
Doctypes
Alle kleuren
Contact
Disclaimer


Experiment online
Web ontwerpen


Doctypes

De zogenaamde 'document header' is in Ontwerpen: deel 2
al even ter sprake gekomen. Arachnophilia genereerde een verouderde code. Die hebben we vervangen door een nieuwere versie.
Op deze pagina zal ik proberen uit te leggen wat het nut van zo'n doctype (document-type) nu eigenlijk is, en wat de verschillen zijn, want er zijn een aantal varianten.
Het gaat hier om het stukje tekst dat helemaal boven aan een html-document is geplaatst.
Nog boven he <html>-tag.
Met het plaatsen van een bepaald doctype geef je aan de browser aan, welke code je hebt gebruikt in je webpagina. Ofwel, aan welke HTML-versie het document voldoet.
Voor het goed weergeven van een pagina is een doctype evenwel niet echt nodig.
Dit komt omdat HTML een programmeertaal is, die niets anders hoeft te doen dan ordenen en op een bepaalde manier weergeven van informatie.
In de HTML-code is toch al duidelijk geworden, hoe en waar alles moet worden neergezet. Een browser weet hier altijd wel wat van te maken.
(Eigenlijk is HTML (Hypertext Markup Language) net als CSS (Cascading Style Sheets) geen programmeertaal, maar meer een 'opmaak'taal.)
Let op!
De doctype-declaratie ofwel de Document TYpe Definition (DTD) is wl een verplicht onderdeel van iedere html-pagina.

Web Standaarden

De doctypes zijn erg nuttig in verband met de W3C webstandaarden.
W3C (World Wide Web Consortium) vereist een kloppend doctype.
Met de HTML-validator kun je controleren of je website technisch klopt, en eventuele fouten opsporen. Dit is erg handig als je website er met een bepaalde browser niet uitziet zoals je zelf zou willen.

Uitleg van de verschillende Doctypes

HTML 4.01 Strict

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

(Je moet bij dit doctype het HTML-document precies laten kloppen.
Dat wil zeggen dat je exact de code moet kennen voor HTML 4.01.
Wil je uitzoeken welke code bij dit doctype is toegestaan, ga dan naar het internet adres dat daarin is opgenomen.
Er mogen geen oudere tags gebruikt worden.
Ook moet je gebruik maken van stylesheets. Ofwel als extern bestand,
of opgenomen in het HTML-document zelf, als zogenaamd 'stijlblok'.)

HTML 4.01 Transitional

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

(Als je gebruik maakt van dit doctype, dan kun je zowel stylesheets
gebruiken voor de opmaak, maar ook kunnen er nog bepaalde HTML-tags gebruikt worden voor de opmaak van iedere afzonderlijke pagina.
Dit doctype staat dus wat vrijere programmering toe.
Veel browsers gaan bij dit doctype in zogenaamde 'quirks-modus' (ook wel compatibility-of uitwisselbaarheids-modus genoemd) over.)

Normaal gesproken zal een browser in de 'standards compliance-modus' gaan.
Wil je er zeker van zijn, dat iedere browser in de quirks-modus gaat, wanneer jouw website wordt geladen, dan moet je het webadres dat is opgenomen in de doctype-declaratie, weglaten. Het doctype ziet er dan als volgt uit:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

(De website zal nu bij zowel oude als nieuwere browsers op dezelfde manier worden weergegeven. Nieuwere browsers zullen zich nu gaan gedragen, alsof ze een oudere browser zijn. Ze zullen dus doelbewust bugs (fouten) van de oudere browsers gaan simuleren. Voor niewe websites die keurig voldoen aan de HTML webstandaard is dit overigens helemaal niet handig, maar voor zwaar verouderde websites juist weer wel.)

HTML 4.01 Frameset

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

(Dit doctype kun je plaatsen, als je frames gebruikt op je website.
Een browser interpreteert dit doctype verder net zo als HTML 4.01 transitional.)

Waarom een Doctype plaatsen?

Het plaatsen van een doctype is in elk geval belangrijk als je wilt controleren of je website voldoet aan de juiste HTML-code, en of deze code foutloos geschreven is.
De HTML-validator weet dan om welke versie het gaat, en toont de eventuele fouten die je hebt gemaakt.
Het is leuk als je website gevalideerd (correct verklaard) wordt, maar echt nodig is dit nu ook weer niet. Wel is het zo, dat een website met een foutloos geschreven code veel sneller geladen wordt.
En dat is dan weer erg belangrijk in verband met ongeduldige bezoekers!
Wordt je site niet gevalideerd, dan kun je twee dingen doen:
Of je haalt alle fouten uit het document, of je plakt er gewoon een andere doctype-declaratie op.
Zelf heb ik de voorkeur gegeven aan de eerste optie!

Oudere Doctypes

Hier volgen nog een aantal oudere doctypes, en onderaan deze pagina kun je je eigen site laten controleren.

HTML 2.0

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

HTML 3.2

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

HTML 4.0 Strict

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

HTML 4.0 Transitional

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">

HTML 4.0 Frameset

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd">

Website controle

HTML-validator

CSS-validator

Kalender Datum:
Laatste wijziging:

Corrie Looijen
2010-2015