HTML Structuur document


Handleiding HTML Inhoud HTML | Inhoud CSS | Trefwoordenregister | Begin


Inhoud onderdeel: Introductie structuur document | De head | De body | DOCTYPE-declaratie | Titel document | Commentaar | Basisweergave document

Gerelateerde elementen: BASE | BODY | HEAD | HTML | LINK | META | SCRIPT | STYLE | TITLE


DOCTYPE-declaratie

Helemaal aan het begin van een document wordt de DOCTYPE-declaratie (document type) opgenomen. Deze is ervoor bedoeld aan te geven aan welke HTML-versie het document voldoet. De DOCTYPE-declaratie verwijst naar een document type definition (DTD).

HTML 4.01, de laatste (als revisie van HTML 4.0) vastgestelde HTML-aanbeveling, kent drie verschillende DTD's. Het onderscheid tussen de DTD's zit in de elementen en attributen die ze ondersteunen. De basis DTD is HTML 4.01 Strict. Deze bevat alle elementen en attributen, met uitzondering van die welke het label afgekeurd hebben gekregen en die welke betrekking hebben op frames. Afgekeurd zijn elementen en attributen, die deel uitmaken van HTML 3.2, maar waarvoor er in HTML 4 een alternatief is (via bijvoorbeeld stylesheets). Omdat de alternatieven op dit moment slechts door een beperkt aantal browsers ondersteund worden, is het gebruik van de afgekeurde elementen en attributen nog steeds toegestaan. De tweede DTD, HTML 4.01 Transitional, bevat daarom alle elementen uit HTML 4.01 Strict plus de afgekeurde elementen en attributen. In de derde DTD, HTML 4.01 Frameset, zijn tenslotte alle elementen en attributen uit HTML 4.01 Transitional opgenomen, plus die welke betrekking hebben op frames.

De DOCTYPE-declaraties voor de DTD's van HTML 4.01 zijn hierna te zien. Een overzicht waarin ook de DOCTYPE-declaraties voor de andere HTML-versies zijn opgenomen, wordt gegeven bij de beschrijving van !DOCTYPE.

DOCTYPE-declaratie HTML 4.01 Strict:

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

DOCTYPE-declaratie HTML 4.01 Transitional:

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

DOCTYPE-declaratie HTML 4.01 Frameset:

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

Het gebruik van één van bovenstaande DOCTYPE-declaraties en vooral het voldoen aan de bijbehorende specificatie wordt aanbevolen. Met het voldoen aan een specificatie verklein je de kans dat de browser van een bezoeker de documenten niet correct kan weergeven.

Het opnemen van de DOCTYPE-declaratie is in ieder geval van belang als je een document wilt controleren op het gebruik van de juiste HTML-code. De validator weet dan op basis van welke HTML-versie de controle moet plaatsvinden.

De meeste oudere browsers maken geen gebruik van de DOCTYPE-declaratie. Nieuwere browsers als Microsoft Internet Explorer 6.0 voor Windows en Microsoft Internet Explorer 5.0 voor Macintosh, Mozilla, Netscape Navigator 6.0 en hoger en Opera 7.0 en hoger gebruiken de DOCTYPE-declaratie om te bepalen hoe een document moet worden weergegeven. Onderscheid wordt daarbij gemaakt tussen twee manieren van weergeven: de "quirks" of "compatibility" (uitwisselbaarheids-) modus en de "standards" modus. De reden voor de introductie van deze zogenaamde "DOCTYPE switch" (verwisseling) is het feit dat oudere browsers nogal wat fouten kennen in de wijze waarop ze met HTML en CSS omgaan. Het gaat dan bijvoorbeeld om het erven van stijlen in tabellen en het berekenen van de breedte en hoogte van elementen. Ook accepteren oudere browsers allerlei fouten die ontwikkelaars van webpagina's maken in hun HTML- en CSS-code. Bijvoorbeeld het onjuist opnemen van waarden, zoals eenheden voor lengte (13 px in plaats van 13px), of RGB-kleuren (FF0000 in plaats van #FF0000).
Nieuwere browsers proberen zich meer en meer aan de officiële standaarden te houden. Dat leidt er onder meer toe dat speciale constructies, die webontwikkelaars bedacht hebben als oplossing voor de problemen in oudere browsers, opeens tot een andere weergave leiden in de nieuwere browsers. Bij de weergave overeenkomstig de standaarden hoort ook, dat fouten in de code niet meer geaccepteerd worden. Dat kan er toe leiden dat stijlen soms helemaal genegeerd worden. De DOCTYPE-verwisseling moet hiervoor een oplossing voor bieden. In de quirks modus wordt de weergave van het document door oudere browsers nagebootst, dus inclusief alle fouten. In de standards modus wordt het document weergegeven volgens de laatste standaarden op het gebied van HTML (versie 4) en CSS (versie 2).

Bij het bepalen van de weergave-modus speelt bij de meeste browsers niet alleen de gebruikte DOCTYPE-declaratie een rol, maar ook of daarin de URI van de document type definition is opgenomen. In het volgende overzicht is voor de verschillende DOCTYPE-declaraties aangegeven of de weergave al dan niet in de standards modus is. Dat is gedaan voor Microsoft Internet Explorer (6.0 voor Windows en 5.0 voor Macintosh), Netscape Navigator (6.0 en hoger), Mozilla en Firefox en Opera (7)

  Weergave in standards modus
DOCTYPE-declaratie IE6
Windows
IE5
Mac
NN6+
MOZ
FF
OP7+
HTML 2.0 nee nee nee nee
HTML 3.2 nee nee nee nee
HTML 4.0 Frameset zonder URI nee nee nee nee
HTML 4.0 Frameset met URI ja ja nee ja
HTML 4.0 Transitional zonder URI nee nee nee nee
HTML 4.0 Transitional met URI ja ja nee ja
HTML 4.0 Strict zonder URI ja ja ja ja
HTML 4.0 Strict met URI ja ja ja ja
HTML 4.01 Frameset zonder URI nee nee nee nee
HTML 4.01 Frameset met URI ja ja ja ja
HTML 4.01 Transitional zonder URI nee nee nee nee
HTML 4.01 Transitional met URI ja ja ja ja
HTML 4.01 Strict zonder URI ja ja ja ja
HTML 4.01 Strict met URI ja ja ja ja
geen DOCTYPE-declaratie nee nee nee nee
onbekende DOCTYPE-declaratie ja ja nee ja

Bij de keuze van een DOCTYPE-declaratie voor een document is het allereerst natuurlijk van belang vast te stellen aan welke standaard wordt voldaan. Ook is het zaak ervoor te zorgen dat je geen fouten in de HTML- en CSS-code hebt gemaakt. Om dat te controleren kun je gebruik maken van een validator (zie de buttons onder aan elke pagina in de Handleiding HTML). Tenslotte bekijk je de HTML-documenten in een browser die de DOCTYPE-verwisseling ondersteunt zowel in de standards als de quirks modus (daarvoor moet je dus echt de DOCTYPE-declaratie verwisselen). Gebruik je constructies waardoor de documenten er verschillend uitzien in de standards en de quirks modus en wil je dat de weergave in oudere en nieuwere browsers hetzelfde is, dan kun je het beste kiezen voor de quirks modus. Dat doe je door bijvoorbeeld de DOCTYPE-declaratie voor HTML 4.01 Transitional op te nemen zonder de URI van de document type definition:

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


Vervolg: Titel document



Inhoud onderdeel | Inhoud HTML | Inhoud CSS | Trefwoordenregister | Begin

Handleiding HTML (https://www.handleidinghtml.nl/)
Copyright © 1995-2021 Hans de Jong
Laatste wijziging: 16 januari 2005