Le principe le plus "propre", c'est que les liens renvoient vers une page très similaire ou seul le conteneur principale est différent...
Pour éviter d'avoir à faire plein de .html, on passe par le PHP... Le role de PHP est de générer dynamiquement la page, mais ça se complique légèrement, d'autres sites t'expliqueront mieux que moi...
En attendant, pour un site de 4/5 pages, il n'est pas absurde d'avoir des .html différents... Il changera donc bien de page, mais le design étant le même (donc chargement quasi-instantané) donnera l'illusion de ne changer que le contenu centrale...
Une autre solution existe qui permet réellement de ne changer que partielement le contenu, c'est en passant par du JavaScript, mais ce n'est pas "propre" du fait que ça ne marchera pas chez les internautes qui le désactivent... L'avantage du JS est de pouvoir rajouter des effets (comme des fondus de transparence....), mais je te déconseille de tenter cette solution sans connaissances...
En pratique, "on fait les 2"... un site full-HTML/CSS (en passant ou pas par PHP/SQL....) et on active (ou pas) les effets Javascript / Ajax si c'est possible...
---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.