te recomiendo que comiences por
http://www.librosweb.es/css/, no lo he leido pero dicen que es un buen material que muchos en este foro se han leido. respecto a tu explicacion, no confundas CSS con un generador de contenido. en palabras mortales, CSS es una tecnologia que se enfoca en separar la presentacion del contenido. lo que quiere decir es que dado un documento HTML, este solo contiene contenido. como probablemente ya sabras, las etiquetas HTML te permiten manejar la presentacion de la informacion con atributos: ancho, alto, fuente, tamaño fuente, estilo de fuente, etc. sin embargo, esto ya quedo en el pasado y el estandar actual no contiene atributos para la presentacion. esa tarea se le ha delegado a CSS. CSS tiene unas ventajas mayores frente a los atributos debido a la caracteristica principal de aplicar la presentacion en cascada, el cual hace la presentacion mucho mas manejable y comodo.