For the most part, your markup is fine. Each site presents slightly different problems. I would say that your code could be improved by removing #intro and just applying CSS to the two columns.
Depending on the rest of your page, you can do without the #header div.
Additionally, if necessary, you can use html AND body to help with multiple backgrounds / containers. Just remember that body starts acting like a div (doesn't apply to the bottom of the browser) as soon as you start applying styles to html .
Using divs or new HTML 5 block elements is all about semantic meaning, and lets places hang your CSS second.
Since each of your div elements serves a specific purpose, where they provide a semantic grouping of the elements that go together, I would say that your code is fine.
For the record, this is divitis:
<div class='image'> <div class='shadow'> <div class='bottom-shadow'> <img src="..." alt="" /> </div> </div> <div class="clear"></div> </div>
Doug Neiner Jan 29 '10 at 18:33 2010-01-29 18:33
source share