Wat is het verschil tussen HTML en CSS?
HTML bepaalt wat er op je pagina staat en wat het betekent. CSS bepaalt hoe het eruitziet.
Het skelet en de kleding, om het simpel te houden. Zonder skelet valt de kleding op de grond.
Ze doen dus verschillend werk en zijn allebei nodig.

Wat HTML doet
Het zegt: dit is een kop, dit is een alinea, dit is een lijst, dit is een link. Betekenis, geen uiterlijk.
Zoekmachines en voorleessoftware lezen die betekenis. Daarom is het belangrijk dat een kop ook echt een kop is.
Wat CSS doet
Het zegt: koppen zijn donkerblauw en dertig pixels groot, alinea’s hebben ruimte eronder, links zijn onderstreept.
Verander je dat, dan verandert het uiterlijk overal tegelijk. Meer daarover lees je bij css.
Waarom de scheiding ertoe doet
Omdat je uiterlijk vaker verandert dan je inhoud. Een nieuw ontwerp raakt dan alleen je CSS.
En omdat betekenis moet blijven kloppen. Een alinea die je met CSS groot en vet maakt, is voor een zoekmachine nog steeds een alinea.
Mijn vuistregels
- Gebruik koppen voor structuur, niet omdat ze groot zijn.
- Los uiterlijk op met CSS, nooit door je HTML te verbouwen.
- Verberg niets met CSS wat er niet hoort te staan; het staat er nog.
- Controleer je koppenstructuur los van hoe de pagina eruitziet.
Die eerste is de meest gemaakte fout in paginabouwers.
Waar mensen het door elkaar halen
Bij tekst die groot en vet is. Dat kan een echte kop zijn, of een alinea die er alleen zo uitziet.
Voor jou als lezer maakt het niets uit. Voor Google en voor een schermlezer alles. Meer daarover lees je bij html.
En JavaScript?
Dat is de derde taal: die zorgt voor gedrag. Een menu dat opengaat, een formulier dat controleert of je iets vergat.
Inhoud, uiterlijk en gedrag: drie talen, drie taken.