I have started (and stopped) twice on doing this and I know Hartnell has taken a shot at it as well. My most recent effort is cssreference.wikidot.com and I put the brakes on it when this project was started. I'd like to start porting over some of the work I've done, but am interested in some input from this group before I dive in.
I'm wrestling with the best way to present the information.
My first thought (which is the approach I started at cssreference.wikidot.com) was to list each selector in the base.css file and show how it's used in base.css, then include some sample custom css to demonstrate how you might tweak the styles and show a screen shot of the result.
But then I was thinking that if you're documenting something like h1 that appears in various selector blocks like:
h1,h2,h3,h4,h5,h6{ ... } h1{ ... } h1 a{ ... } #header h1{ ... } a.weditor-h1{ ... }
then maybe it's better to keep all references to h1 on a single page and make it easy to track down through page tags.
My final thought would be to break down the entire file from top to bottom, listing each selector block as it's own page and documenting it. The problem there is that there are a couple of things like #top-bar li ul that are listed twice as selector blocks (in this example they are 40 lines apart). Obviously, we wouldn't want two different pages for that. Then there's the issue of multiple selectors listed in one block like h1,h2,h3,h4,h5,h6 { … }.
My final, final thought would be to do something like Hartnell is doing with class:body and show where the selector is used in base.css. I really like this approach, especially if we can incorporate some specific examples and screenshots (or links to working examples).
Thoughts?
-Ed