Il est prévu que le balisage, c'est-à-dire les balises HTML, représente le sens et la structure, pas l'apparence. Il a été mal mélangé dans les premières versions de HTML, mais les normes essaient de le nettoyer maintenant.
Le fait de laisser les balises contrôler l'apparence pose un problème: vos pages ne fonctionnent pas bien avec des appareils pour handicapés, tels que des lecteurs d'écran. Cela conduit également à avoir beaucoup, beaucoup de balises dans votre texte qui n'aident pas à clarifier le sens, mais l'encombrent plutôt avec des informations d'un niveau différent.
CSS a donc été conçu pour déplacer la mise en forme / l'affichage dans une langue différente, qui est distincte du texte et peut facilement être conservée de cette façon. Entre autres choses, cela permet de changer de feuille de style pour changer l'apparence d'une page Web sans toucher l'autre balisage. Et pour pouvoir faire ça pour beaucoup de pages en un seul coup de houle.
Les outils que CSS vous donne pour ce faire ne sont pas toujours élégants, je suis de votre côté. Par exemple, il n'y a aucun moyen d'effectuer un centrage vertical efficace. Et le centrage horizontal, s'il ne s'agit pas uniquement de texte text-align
, n'est pas beaucoup mieux.
Vous avez le choix de faire facile, efficace et confus ou propre, élégant et encombrant. Je ne comprends pas pourquoi les développeurs Web supportent ce gâchis, mais je suppose qu'ils sont heureux d'avoir au moins une chance de faire leur travail.