I just finished a medium sized web site and one thing I noticed about my css organization was that I have a lot of hard coded colour values throughout. This obviously isn’t great for maintainability. Generally, when I design a site I pick 3-5 main colours for a theme. I end up setting some default values for paragraphs, links, etc… at the beginning of my main css, but some components will change the colour (like the legend tag for example) and require me to restyle with the colour I wanted. How do you avoid this? I was thinking of creating separate rules for each colour and just use those when I need to restyle.
i.e.
.color1 { color: #3d444d; }
That’s exactly what you should do.
The more centralized you can make your css, the easier it will be to make changes in the future. And let’s be serious, you will want to change colors in the future.
You should almost never hard-code any css into your html, it should all be in the css.
Also, something I have started doing more often is to layer your css classes on eachother to make it even easier to change colors once… represent everywhere.
Sample (random color) css:
Then some markup, notice how I am using the colors layer with otehr classes, that way I can just change ONE css class:
Remember… inline css = bad (most of the time)