En CSS también puedes manejar disposición de elementos en la página y cambiar totalmente la estructura .. No sólo cambiar algunas propiedades de algunos elementos fijos ...
Fijate en estos ejemplos/tutoriales:
http://www.csszengarden.com/
De todas formas si estás interesado en hacer una "plantilla" con PHP .. lo que puede usar son los "gestores o motores" de gestión de plantillas. Con esto separas tu "código" PHP del de la presentación: esa página HTML con CSS y demás ..
Algunos de estos "motores" son:
NokTemplate (fáciles de entender y en castellano)
http://www.jpw.com.ar/noktpl.php
Smarty (muy potentes .. pero más complicadas por supuesto de usar).
http://smarty.php.net
Un saludo,