Les débuts du web ont été marqués par l’utilisation massive de techniques maintenant proscrites, mais loin d’être abandonnées, avec lesquelles présentation et contenu étaient inextricablement mêlés. Le langage HTML était utilisé pour faire une mise en page qu’il permet difficilement, il en résultait un code alourdi, complexe et difficile à modifier, et des sites inaccessibles aux moteurs de recherche et aux navigateurs non graphiques.
Cette situation s’est modifiée avec l’arrivée de CSS, un langage de description de styles, et son intégration progressive aux navigateurs. Contenu et présentation peuvent être entièrement séparés, matériellement dans des fichiers différents, et surtout dans leurs usages : le contenu est décrit en HTML, la présentation en CSS. Les bénéfices sont importants : code allégé et simplifié, facilité de compréhension et de mise à jour, accessibilité aux navigateurs non graphiques et aux moteurs de recherche, possibilité de modifier la présentation sans toucher au contenu, ainsi que d’adapter la présentation d’un même contenu à différents médias, écran, imprimé ou braille.
On peut parcourir sur le site du W3Québec un diaporama sur les avantages d’un site conforme aux standards.
Dans le prolongement de cette séparation contenu-présentation, et dans le même but de simplicité et d’efficacité, on sépare également le comportement du contenu. Le code JavaScript, avec lequel on applique des comportaments aux pages web (animations, vérifications et fonctionnalités diverses) n’est plus incorporé aux fichiers HTML mais fait l’objet d’un fichier séparé. Une page web se compose alors, pour peu que des styles et des comportements lui soient appliqués, d’au moins 3 fichiers : HTML, CSS et JavaScript.