Alvorens we het gaan hebben over wat nu HTML en CSS precies is, eerst even wat geschiedenis over documenten.

Veel mensen staan niet stil bij de basis principes van een document en nemen alles aan als normaal. Voor de mens is na verloop van tijd e.a. logisch, maar dit geld niet voor Computers. Een computer programma moet elke keer weer opnieuw, precies weten wat hij moet doen en hoe een document er uit moet zien. In tekst verwerkers wordt deze informatie opgeslagen in z.g. templates, zo slaat Microsoft Word uw standaard document instellingen en opmaak, op in het bestand normal.dot.

Als we naar een pagina kijken, dan hebben we te maken met een bepaalde indeling c.q. layout.
De meeste pagina's hebben een kop, een linker en rechter marge en mogelijk een voetnoot. Ook hebben we natuurlijk te maken met regel afstand, letter type, letter grote, vet, cursief of onderstreepte tekst. Als u een brief schijft of tikt dan heeft u ooit geleerd hoe u deze indeelt.
Voor een computer is e.a. een stuk moeilijker en moet u hem precies aangeven, hoe u wilt dat de uiteindelijke tekst er uit moet zien.
De tekstverwerker die u gebruikt om uw tekst te laten zien, heeft intern allerlei opmaak commando's die u, normaal gesproken niet ziet en die in een tekstverwerker ook meestal niet interessant zijn, behalve als de tekst er niet uitziet zoals u verwacht. Bewaar een document maar eens als .HTML. Schrik niet als u ziet wat voor een puinhoop, qua dubbele definities, die u dan ziet. Het wordt u dan direct duidelijk hoe slechts de meeste, zo niet alle tekstverwerkers met uw tekst en opmaak om gaan.

Met de komst van het Internet werd het noodzakelijk dat men een wereldwijde afspraak maakte over hoe men documenten gestandaardiseerd zou moeten opmaken en vormgeven. Die afspraak heeft geresulteerd in de HTML "HyperText Markup Language"  standaard. (klik met de muis op HTML om de Wikipedia pagina op te roepen)