A internet como conhecemos hoje, é fruto de uma evolução constante e gradativa desde sua invenção. Desde seus protocolos até suas linguagens de desenvolvimento sofreram tais mudanças e com certeza, um dos principais componentes dessa grande estrutura mundial é o HTML. Mas espera ai, não iamos falar sobre CSS?
Pois bem, uma coisa leva a outra. Vejamos o começo de tudo, a linguagem de marcação surgindo para solucionar o problema de um cientista que queria uma forma de divulgar seus artigos na rede, para isso, ele criou  algo simples, restrito a comunidade científica e usado apenas para estrutura o conteúdo e exibir um texto de forma coerente.
Mas a linguagem usada pelos cientistas se tornou padrão da Internet, e com o tempo, passou a ser mais testada. Todos queriam imagens, cores e designer avançado. E o HTML antigo não suportava isso, então foram adicionadas novas tags. Isso solucionou o problema por um tempo, mas começou a surgir outro grande problema. Com os novos recursos, designers e desenvolvedores de websites, abusavam da criatividade e enchiam suas paginas de fontes e estilos visuais, mas para alterar uma linha até que era mais simples, porem quando se queria mudar a cor de um link, por exemplo, e esse link estava em 300 paginas diferentes, era trabalho manual mesmo, um por um, tag por tag.
Misturar estilo e estrutura não era mais interessante, e foi assim que em 1995, Håkon Wium Lie e Bert Bos apresentaram a proposta do CSS(Cascading Style Sheets) que logo foi apoiada pela W3C. A idéia geral era, utilizar HTML somente para estruturar o website e a tarefa de apresentação fica com o CSS disposto em um arquivo separado .css ou no proprio HTML demarcado pelas tags .
Os conceitos de estilização com css em sua maioria ainda não são seguidos totalmente, devido a problemas de compatibilidade entre browsers e muitas vezes até falta de um conhecimento maior dos desenvolvedores, mas a W3C trabalha nos standards, que visam tornar o desenvolvimento padrão e tambem exigir dos navegadores uma interpretação adequada e compatível.
Vale a pena  conferir o site http://www.w3.org/ e conferir os padrões e recomendações oficiais.