The bottom line? Layout of html pages, using CSS, can be confusing. I keep learning more things along the way. For instance, there are things like hasLayout in IE, and block formatting contexts in the W3C spec. Here are a couple of articles that are good explanations of both of these things.
- CSS Selector behavior
- Display: inline-block in webkit
- greasemonkey userscript issue
- JQuery UI drifting position
- Fiddling with CSS3 box-shadow
- Who invented margin collapsing, anyway?
- Getting Started with HTML5
- Put advanced pseudo class style definitions on their own line
- More IE and inline-block
- IE6 Negative Margin Bug