Hallo,
Du hast nicht beachtet, für welche Elemente vertical-align definiert ist.
Hm gut.. für Inline Elemente..
... und für Tabellenzellen.
Da display:table-cell nicht vom IE unterstützt wird, funktioniert so etwas eben immer noch _nur_ in Tabellen.
viele Grüße
Axel