For a general web site, the primary components are
* Header
* Navigation
* Content
* Footer
Pretty basic. Now break the big sections into the XOOPS blocks (left, center-left, center-right, center-center, content, right, banner). There's your (x)html.
CSSZengarden does the same - here's the html (no positioning is done there), add your css and graphics to make it look the way you want.
Then add your other criteria - scalable, fluid, cross-browser compatible, CSS1/2 valid, accessible, language friendly (UTF-8 discussions elsewhere).
That's how I would start...