padding ist für den _innenabstand_ zuständig und margin für den _aussenabstand_.
Entfernt mal margin und schaut was dann passiert.
Lol, die Blocks sind dann nicht mehr zentriert! Aber untereinander...
Also der HTML-Code von Felix ist wohl nur ein Hack...