First of all, how in the world did I miss this thread?! This is my favorite subject.
@sunsnapper,
Thank you for posting this thread! This is a great resource for theme designers.
A couple points I wanted to touch on....
1. Compression...
A tool I use quite often is at
http://flumpcakes.co.uk/css/It removes comments, line breaks, and converts overly verbose CSS to the most minimalistic equivalent posible.
2. Points vs. Pixels...
From everything I've read, it's better to use em or %. This allows scaling of text and design elements when the user is relying on a screen reader.
3. Structure...
I couldn't agree more that structuring your CSS is vital. I've seen so many cases in many forums (not just this one) where "bugs" were simply CSS structure issues. What I've done to overcome such issues is start with a standardized CSS file and fine-tune as needed. For example:
body {}
table {} /*Note: Only if I have to - Preferably for tabular data*/
td {} /*Note: Only if I have to - Preferably for tabular data*/
th {} /*Note: Only if I have to - Preferably for tabular data*/
h1 {}
h2 {}
h3 {}
a {}
a:hover {}
ul {}
li {}
p {}
form {}
input {}
label {}
textarea {}
select {}
/*XOOPS-Specific CSS ->
XOOPS Classes and IDs go here Plus your fine tuning of the CSS depending on your application.*/
4. Browser compatibility...
Well, I have to be honest; my attitude on browser compatibility is this... I design for standards compliance, and then adjust for inferior browsers, like IE; however, I will not sacrifice compliance for compatibility. I always try to do my best to ensure that a design is compliant and compatible.
My basic attitude towards designing for IE is that I'll do everything that I can to make a site display the way it should in all browsers; however, M$ should get off their lazy @sses and learn to code a browser that respects what everyone else in the world considers the standard.
@weddy,
RE: Table-less themes...
There are several now. Take a look at
http://mywebresource.com/modules/mydownloads/ for just a small (simple) example of a few. There are many more that are much more advanced. See the theme news announcements for more.
RE: IE Zoom...
IE 7 has a very nice zoom functionality. Unfortunately, that's one of the very few things M$ did right with IE7.
RE: Pure CSS layout...
Good luck with the module templates! That has been the #1 obstacle for me in producing a standards compliant, accessible design using XOOPS. Pure and simple, module Developers may be great with PHP, but they suck at standards compliant XHTML and CSS.
I just wanted to say that I also agree with you view on the usage of em and print.css files. I've found this to be very useful when you have a lot of content that visitors may want to print out.
Even though my "free" XOOPS themes don't always follow these best practices, I agree 100% that they should be standard as the default and for any custom work performed.
BTW... Here are a few links from my CSS bookmarks. Please forgive any duplicates.
http://jigsaw.w3.org/css-validator/http://www.csscreator.com/http://www.accessify.com/tools-and-wizards/developer-tools/list-o-matic/http://www.kalsey.com/tools/csstabs/http://www.scriptomizers.com/http://fourshapes.com/articles/diagonal-lines-in-css/http://w3goodies.smaug.cz/?p=8http://www.cssplay.co.uk/layouts/basics2.htmlhttp://glish.com/css/7.asphttp://www.alistapart.com/articles/taminglists/http://cssfill.com/http://www.benmeadowcroft.com/webdev/http://www.72dpiintheshade.com/2007/01/16/top-10-css-tips-from-a-professional-css-architect/http://www.quirksmode.org/css/quirksmode.htmlhttp://www.andylangton.co.uk/web_design/http://intensivstation.ch/en/templates/http://cssvault.com/http://www.htmldog.com/http://www.to.ma/index.phtmlhttp://www.kalsey.com/tools/csstabs/http://www.listulike.com/generator/http://cssmania.com/http://www.sperling.com/examples/box/http://www.maketemplate.com/form/http://www.ericmeyeroncss.com/http://www.cssremix.com/http://www.maketemplate.com/http://www.neuroticweb.com/recursos/css-rounded-box/http://csstinderbox.raykonline.com/HTH.
James
Insanity can be defined as "doing the same thing over and over and expecting different results."
Stupidity is not a crime. Therefore, you are free to go.