I am reposting this thread in theming to spark some ideas on how should pursue a clients need and to create an amazing theme in my study of CSS. all thoughts are welcome

After a year with Drupal and much growth with how web development is evolving I am leaning on learning more about the CSS that is the back bone of the themes or labels that present the mechanics of our websites. I am using Style Master, Mac Rabbit, Go live, and Photoshop for all my web creation. There is also a book out there called "CSS in Ten Minutes" - that you need to read for about 1000 minutes if you don't understand CSS. The Drupal Theme Garden has had a world of improvement over this growing very quickly year. After dealing with many new clients since my start of representing Drupal. I have discovered what really needs to be to developed in a theme which will make Drupal stand completely in front of the pack as a CMS is a universal theme with an admin area that is more elaborate than the new Garland Theme. I have a new client that has requested a theme that changes background colors with every page so that every node can be published in a unique color scheme - tall order or what!
It's as though the theme should have settings that interact within the publishing of the node -seems possible. As everything depends on the right mind writing the code. But most importantly to show the true strength of a CMS like Drupal you should be able to decide if new nodes can be fluid or Fixed, a choice on how many columns and blocks are going to be set when the node is published, if you want your header or footer to change and resizing of logos as well. It is as though you would have to meld a WYSIWUG editor with what work was done with the Meta Theme and then push that development to yet another level. If you catch my drift this is what my clients are pushing for of how much layout control is desired when publishing any new content. I am also thinking the permissions would have to be set as what type of node designs users would be able to published.
Sounds like a pretty hot CMS that would be almost as large as Gallery2!

Thats all I have for now. The first step is nodes that can choose color schemes...

Johnny

Comments

Chill35’s picture

Right now, there's a way to style -- in Garland -- sticky nodes, right out of the box, so to speak. This is done, of course, not from Drupal, but from altering the style.css sheet :

.sticky {
/* some rules */
}

As far as I can tell, there are two ways now to add a color to a node, a color that becomes the background-color of that node.

Say you have a node which has uid '15'.

FIRST WAY :

In style.css you could add this :

#node-15 {
/* some rules for that particular node, including background-color */
}

SECOND WAY, from Drupal, a wicked way through Javascript :

In the Body of the node, I think we are able to insert script tags as well as use php when we use "php code" Input Format.

The method goes as follows and does require some ease with Dom Scripting.

- get a handle to the current node using getElementById and some php to know which node is the current node.
- with the handle, use the HTMLElement style property to apply styling to the node.

Trouble with this method is that any DomScripting should ideally be done once the web page is completely loaded.
There is a way to insure that the above code will work and it is to use window.onload = function() { } However this will overwrite the window.onload event handler which may cause problems for anything using Javascript on the page, anything that's using the same event-handler.

As far as layout of nodes, there's a contributed module that allows you to style nodes in columns. I know there's one, but I can't remember its name, so I'll have to come back to you on this. Anyone...? It's something-panel...

I'll come back to this.

Chill35’s picture

Hi

Here's the Panels module : http://drupal.org/project/panels

It's been ported to Drupal 5.

I know I am not being very helpful here. I am not adressing your question which is about the creation of a new more cutomizable theme, that would have, for example, a color picker when we create nodes... to choose a background color, and so forth.

Sorry.

Johnny’s picture

Don't be sorry for trying to help dude.

Least I have more to work with for ideas in the CSS as thats where I am at is learning how to edit and then hopefully soon create my own CSS that provides more options for my clients. I will look for the modules that you have described.

So busy here as every day is a learning day with Drupal which is what we love the most is getting paid to learn!

Kind Regards,

Johnny

Chill35’s picture

I wish I was getting paid to learn. Not yet.

Count your blessings LOL... (Talking to me here.)

Caroline

jyuille’s picture

ok - so before i start - pls don't take any of this as a negative criticism of current theme dev - i've written xbrowser themes before and know what a b**ch it can be.. this is a take on what theme dev *could* be with recent tech developments...

here's my thinking:
1) themes are content + representation
content (basically) = .php templates
representation (basically) = .css

2) current drupal theme.css are usually really complex because they try to do too much
most .css handles layout, typography, colors & hacks for things like behavior (tabs etc)
most .css needs to do this in a xbrowser way (ouch!)

3) new tech like jQuery can take a LOT of the dynamic and xbrowser stuff away from the .css

Upshot:
I'd love to see a theme that used jQuery to do top level positioning, dynamic representation aspects (like your node level color scheme) and behaviour (like tabs & menus etc)

I'm planning to do some dev on this kind of thing early next year, hopefully with some help from students here at RMIT... would be happy to work with anyone else in the community who was interested in this too.