Ga naar de hoofdinhoud

Bestandsformaten

Wat is HTML? Geschiedenis, parsing en de DOM

HTML is de opmaaktaal die de structuur van webpagina's beschrijft, en vrijwel elke website draait erop. We behandelen de geschiedenis, hoe browsers HTML verwerken en waar je op let als je HTML naar documenten omzet.

Auteur: Hemen Dönüştür Editör EkibiGepubliceerd: 7 min lezen

Bestandslabel met de tekst HTML en een punthaakpictogram

Bijna alles wat je op het web ziet, ook deze pagina, is in HTML geschreven. HTML (HyperText Markup Language) is geen programmeertaal maar een opmaaktaal die de structuur van een document beschrijft: dit is een kop, dit is een alinea, dit is een link, dit is een tabel. En HTML is niet alleen voor websites. Je komt het tegen in e-mailsjablonen, helpdocumentatie, geëxporteerde rapporten en documenten die "als webpagina" zijn opgeslagen. Dit artikel behandelt de geschiedenis van HTML, hoe een browser het leest en op het scherm tekent, veelvoorkomende problemen en waar je op let als je HTML-bestanden naar Word of PDF converteert.

Wat is HTML?

HTML is een taal in platte tekst die inhoud markeert met tags. Tags staan tussen punthaken, en de meeste vormen samen met een openings- en een sluittag een element:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Sample page</title>
  </head>
  <body>
    <h1>Hello</h1>
    <p>This paragraph contains a <a href="https://example.com">link</a>.</p>
  </body>
</html>

Het gedeelte <head> bevat informatie over de pagina (tekencodering, titel, stylesheets), terwijl <body> de zichtbare inhoud bevat. Het uiterlijk komt van CSS en het gedrag van JavaScript. In die taakverdeling beschrijft HTML wat de inhoud is, CSS hoe die eruitziet en JavaScript wat die doet.

Een korte geschiedenis

HTML ontstond als onderdeel van het World Wide Web-project dat Tim Berners-Lee in 1989 bij CERN voorstelde. Zijn eerste browser draaide in 1990 op een NeXT-computer. De vroegste versies van de taal waren minder een formele norm dan een lijst tags die bij CERN was gedocumenteerd. De belangrijkste mijlpalen sindsdien:

  • November 1995, HTML 2.0: RFC 1866, geschreven door Tim Berners-Lee en Dan Connolly, legde HTML voor het eerst als formele norm vast.
  • Januari 1997, HTML 3.2: de versie die het W3C formeel onderschreef als specificatie voor de hele sector.
  • 24 december 1999, HTML 4.01: bleef jarenlang de kernspecificatie van het web; het W3C markeerde haar op 27 maart 2018 formeel als vervangen.
  • 28 oktober 2014, HTML5: het W3C publiceerde HTML5 als Recommendation. Video, audio, semantische sectie-elementen en een nauwkeurig gedefinieerd parsing-algoritme werden daarmee gestandaardiseerd.
  • 28 mei 2019, één norm: het W3C en WHATWG, de gemeenschap die de browsermakers oprichtten, ondertekenden een memorandum of understanding. Daarin is vastgelegd dat HTML en de DOM voornamelijk bij WHATWG worden ontwikkeld, als versieloze "Living Standard".

"HTML5" betekent vandaag dus in feite "actuele HTML"; de officiële specificatie is de voortdurend bijgewerkte HTML Living Standard.

Hoe wijdverbreid is het? Volgens statistieken van W3Techs van 15 oktober 2026 gebruikt 97,8% van de websites waarvan de opmaaktaal bekend is HTML. Dezelfde bron meldt dat 99,1% van de websites waarvan de tekencodering bekend is UTF-8 gebruikt.

Hoe verwerkt een browser HTML?

Wat HTML onderscheidt van andere documentformaten, is dat zelfs slecht geschreven documenten in elke browser op dezelfde manier worden geïnterpreteerd. De HTML Living Standard legt daarvoor een gedetailleerd parsingmodel vast:

  1. De codering bepalen: de browser moet de binnenkomende bytes eerst in tekens omzetten. Hij kijkt achtereenvolgens naar een BOM, de codering in de HTTP-header van de server en een declaratie <meta charset> in de eerste 1024 bytes van het document; vindt hij niets, dan doet hij een onderbouwde gok.
  2. Tokenisatie: een toestandsmachine knipt de tekst op in tokens zoals starttags, sluittags, commentaar, DOCTYPE's en tekens.
  3. Boomopbouw: tokens worden verwerkt volgens invoegmodi zoals "in body" of "in table". De parser houdt een stapel open elementen bij en herstelt verkeerd geneste tags volgens vaste regels.
  4. De DOM: het resultaat is een boom van objecten, het Document Object Model (DOM). CSS wordt op die boom toegepast, en JavaScript leest en wijzigt hem.

De specificatie zegt uitdrukkelijk dat de afhandeling van parsefouten goed gedefinieerd is. Schrijf je bijvoorbeeld <div/>, dan negeert HTML de schuine streep aan het eind, waardoor de volgende elementen binnen die div terechtkomen. Een niet-gesloten <p> wordt automatisch gesloten zodra het volgende blokelement komt. Die tolerantie houdt het web werkend ondanks talloze onvolmaakte pagina's, maar betekent ook dat elke tool die HTML naar een documentformaat omzet, dezelfde regels moet volgen.

Waar wordt HTML gebruikt?

  • Websites en webapps: het geraamte van elke webpagina.
  • E-mail: opgemaakte e-mails en nieuwsbrieven worden in HTML geschreven.
  • Documentatie: helppagina's, softwaredocumentatie en sites die uit Markdown worden gegenereerd.
  • E-books: het EPUB-formaat verpakt de inhoud als XHTML-documenten.
  • Rapporten en exports: veel toepassingen maken rapporten als HTML, en ook de uitvoer van "Opslaan als webpagina" in Word is HTML.

Sterke en zwakke punten

Sterke puntenZwakke punten
Opent in een browser op elk apparaatDe weergave hangt af van externe CSS, lettertypen en afbeeldingen
Open, gratis en voortdurend bijgewerkte normZwak in drukbegrippen zoals pagina's en marges
Vloeiende opmaak die zich aan de schermgrootte aanpastLastig als één bestand te verplaatsen (afbeeldingen staan in aparte bestanden)
Semantische structuur voor toegankelijkheid en zoekmachinesVraagt om voorzichtigheid als er JavaScript in zit
Platte tekst, dus goed te combineren met versiebeheerMinder geschikt dan PDF om een definitieve versie vast te leggen

Met welke programma's open je HTML?

Elke browser, waaronder Chrome, Firefox, Safari en Edge, geeft HTML weer. Om de broncode te bewerken volstaat een code-editor zoals Visual Studio Code of een willekeurige teksteditor. Microsoft Word en LibreOffice Writer kunnen HTML-bestanden openen en als document bewerken, al worden complexe CSS-opmaken daar vereenvoudigd.

Veelvoorkomende problemen en oplossingen

Speciale tekens zien er verminkt uit

De codering van de pagina ontbreekt of klopt niet. Zet <meta charset="utf-8"> bovenaan in de <head> en controleer of het bestand echt als UTF-8 is opgeslagen. Geeft de server een andere codering op, pas dan ook de HTTP-header aan.

Een opgeslagen pagina heeft geen afbeeldingen of stijlen

HTML-bestanden halen afbeeldingen en CSS vaak uit aparte bestanden of van adressen op internet. Verplaats je alleen het .html-bestand, dan werken die links niet meer. Gebruik in je browser de optie om de volledige webpagina op te slaan, of sluit de afbeeldingen in het document in.

De pagina valt uit elkaar bij het afdrukken

Opmaak die voor schermen is ontworpen, past soms niet op papier. Regels met @media print en het instellen van papierformaat en marges met @page in CSS verbeteren de afdruk aanzienlijk.

Tips voor het converteren van HTML-bestanden

Bij onze converter worden HTML-bestanden naar onze server geüpload en binnen 30 minuten verwijderd. Bij het inlezen wordt de codering herkend aan de BOM, daarna aan de declaratie <meta charset> en daarna aan de inhoud zelf; oudere pagina's die geen UTF-8 zijn, worden gelezen als Windows-1254 (de oude Turkse codetabel). De inhoud van <body> en het <style>-blok van de pagina blijven behouden, en HTML-fragmenten zonder <body>-tag worden verwerkt zoals ze zijn.

  • HTML naar PDF draait in een browserengine: print-CSS wordt toegepast, een paginaformaat dat met @page is vastgelegd wordt gerespecteerd (anders A4), en achtergrondkleuren worden afgedrukt. Om veiligheidsredenen wordt JavaScript niet uitgevoerd en worden afbeeldingen, lettertypen of stylesheets op internet niet gedownload; alleen bronnen die in het document zijn ingesloten (data:-URI's) worden gebruikt. Wil je afbeeldingen in de uitvoer, sluit ze dan in de HTML in.
  • HTML naar Word gebruikt LibreOffice om koppen, lijsten, tabellen, uitlijning en ingesloten afbeeldingen naar DOCX over te zetten. Complexe CSS-opmaak (flex, grid) heeft geen Word-tegenhanger en wordt vereenvoudigd.
  • HTML naar Markdown is ideaal om een webpagina of helpartikel naar een documentatierepository te verhuizen: koppen, nadruk, lijsten, tabellen, links en codeblokken blijven behouden, stijlinformatie valt weg.
  • De andere kant op sluit Word naar HTML de afbeeldingen in het bestand in en maakt één zelfstandig HTML-document met een opgegeven tekencodering, zodat letters met accenten goed in de browser verschijnen.

Veelgestelde vragen

Is HTML een programmeertaal?

Nee. HTML is een opmaaktaal: het beschrijft de structuur van inhoud, maar kent geen lussen, voorwaarden of berekeningen. Voor gedrag op een pagina gebruik je JavaScript.

Wat is het verschil tussen HTML5 en HTML?

HTML5 is de naam van de grote versie die in 2014 een W3C-Recommendation werd. Sinds 2019 wordt HTML bij WHATWG zonder versienummers ontwikkeld als "HTML Living Standard". In de praktijk betekenen HTML5 en HTML vandaag hetzelfde.

Hoe open ik een HTML-bestand?

Dubbelklik erop en het opent in je standaardbrowser. Wil je de broncode zien, open het bestand dan in een teksteditor of gebruik in je browser de optie om de paginabron te bekijken.

Waarom ontbreken afbeeldingen als ik HTML naar PDF converteer?

Worden afbeeldingen van een internetadres geladen, dan downloadt onze converter ze om veiligheidsredenen niet. Sluit de afbeeldingen als data:-URI's in de HTML in, of converteer het document eerst naar Word en voeg de afbeeldingen daar toe.

Is een HTML-bestand veilig om te openen?

HTML kan JavaScript bevatten, dus wees voorzichtig met bestanden van onbekende afzenders. HTML-pagina's die als e-mailbijlage binnenkomen en om een wachtwoord vragen, zijn een veelgebruikte phishingtechniek.

Bronnen

Gerelateerde converters

Alle artikelen