CSS Stylesheets are a major improvement in the World Wide Web, allowing HTML
to come back to its roots: a language to structure and publish content on the
web, not to apply a visual formatting to that content. Unfortunately HTML and
CSS have the same limitations: both are static languages!
From Perl scripts to PHP, a lot of technologies are today available to move HTML to the dynamic
age but why not, going even further and do the same with CSS? That's what I did
when developing eDContainer (a container for web sites and web applications),
having the following objectives in mind:
To provide an external, user-friendly, visual configuration file: the user
doesn't have to edit the stylesheet, he may not be familiar with CSS and even
if so, properly editing a stylesheet requires some experience.
To not have to repeat general identical values like fonts and colors x
times within the stylesheet: the value is defined once in the visual
configuration file and inserted automatically by PHP in the different
locations within the stylesheet.
To provide a solution to the implementation of skins or themes (similar to
Winamp or Windows XP principles): several different visual configurations can
be defined and dynamically switching from one to the other is possible.
To be able to change some style behaviors dynamically, depending on some
If you're quite familiar with PHP and CSS, reading the above objectives will
probably make you already think about some solutions to achieve them. That's the
fun about coding, always different and sometimes better ways to obtain the same
results! When writing this article, I'm not saying that what is described here
is the only way to do it. It's a way and I hope I'll manage to keep you
interested: Let's start!