The short answer is that EE does not currently support “one-click theming”. I’ll take the time to answer why this is the case since this question comes up once in a while, and has even been the source of some heated discussions.
In order to permit your site’s design to change with the click of one button (I’m not talking about a simple CSS change. That is possible to do and you’ll find lots of tutorials on the net) means that templates have follow rigid structural rules, and they have to contain a lot of scripting. “One click”, while very simple from the user perspective, is quite complex from the program’s perspective.
The general rule is this: The easier it is for a user to switch themes, the harder it is to customize the look of a given theme. The converse is true as well.
There are a number of publishing systems on the market that allow theme switching (Radio, Nuke, Mambo, etc.). In accordance with the above rule, however, you’ll find that sites that are managed using those programs tend to all look like one of their pre-packaged themes. Rarely will you ever see a site that deviates significantly from a default theme due to the sheer complexity in making changes. It involves wading into the scripting so it’s not for the timid.
We take the opposite philosophy. We want to grant our users the ability to create sites that meet their unique vision. In doing so we’ve made our templates as accessible and transparent as possible. Granted, there are some specific tags that EE requires within its templates, but all things considered, customizing the look of an EE site is far, far easier than it is to customize the look of systems that support one-click themes.
Consider the incredible diversity of these EE powered sites, for example:
In These Times
Great Lakes College
OUKosher
SpiritHit News
Sageera
These sites would be very difficult to accomplish if we imposed the kinds of rigid rules necessary to allow one-click theming.
I understand that some people simply want to choose a pre-packaged theme and be done with it. As much as I hate to say it, EE may not be the right program for them. EE is a canvas for those who want to create something unique. As such, it takes some effort to create an EE powered site, but the results are worth it, IMHO.
Having said all that, I’m open to the idea of creating a theme module in the future, that would allow users to choose which approach they want. For those who want the power to create their own site, they can have it, and for those who want simple switching, they can have it too. Part of me, however, resists this idea because I tend to be adverse personally to cookie-cutter sites.
I think that you are asking more about having your users select a theme when they are viewing your site, but what I wrote still applies.