Pues en principio puedes hacerlo -sólo- con CSS (bien manejados, es increible que no sólo puedas cambiar un "color" a un elemento de la página .. también hasta la estructura de la página completa y disposición de elementos podría cambiar).
Te recomiendo ver esas alternativas en el foro de CSS.
Si quieres hacerlo con "PHP" (realmente valdrá la pena? ...) puedes usar los "motores" de gestión de plantillas.
Por ejemplo:
NokTemplate (está en castellano .. son faciles de entender).
http://www.jpw.com.ar/noktpl.php
Smarty (uno de los "standares" en el uso de plantillas, en ingles .. se pueden complicar tanto como quieras).
http://smarty.php.net
Un saludo,