I have written a <box> tag which takes id and class as attributes and emits the divs needed for doing css based rounded corners etc, which I would like to commit in acs-templating. See this page and and the source for why I think it's useful.
I would like to change the standard form and list templates to be xhtml and more css friendly (I think a number of people have done this already -- maybe someone has them already on hand). Also, the current css has hardcoded fonts and sizes which interfere with per site css and I would like to make the css more generic and less cosmetic so that most of the theming is isolated to the individual theme css files.
I would like to add a <resource> tag which would replace the hardcoded resource paths and which would allow us to have per theme images and css looked up rahter than hard coded in the .adp files (it would also let us do things like map images to an image only webserver or akamai with a centralized change). I am not 100% sure what attributes the resource tag should take yet but I am pretty convinced it would make theming a *lot* easier.
Some theming guidelines
- Don't use inline styles, color, background, etc.
- Use class in preference to id.
- class names in camelCase, (_ is invalid, - would be ok but we should choose camel or -)
- Anchors which are currently numbers need a letter as well (number only not valid)
- Use generic class names in preference to package specific ones.
- Use semantic markup and class names.
- Generic markup for portlet and includelets (h2 for heading, h3 for subheading, p, ul, etc for content).
- xhtml 1.0 transitional as a goal.
- No per package css.
Things which make building accessible websites easier:
- Don't depend on context bar as only means of navigation.
- Don't assume a sidebar or tabbed navigation.
- Don't require more that 640px for the content pane.
Things I am not sure about
- should we have a class name prefix for the classes we define in openacs (like oacs or OA)?
- How abstract should the resource tag be? Should it return a url or an html fragment for the resource. If it's a url things like a "text theme" which returned "edit" rather than an edit icon would not be possible (nor would doing sensible things with alt tags for i18n, it would be down to the person doing the adp to get that right).
- How many people would be interested in trying to get this cleaned up?