What is the purpose of collapsing vertical margins?
Why do browsers collapse vertical margins? I can't think of why this would be a desired behavior.
The function a margin serves is to ensure that an element should have X pixels of space on the top/bottom of it. If you had two paragraphs stacked in a div, each with margin:10px 0; without collapsing you would have 20 pixels between them. It makes sense when you think of it in the context of "I want paragraphs to always have 10px of space above and below them".
Here's an excellent post on the topic: http://complexspiral.com/publications/uncollapsing-margins/