Это потому, что у IE странная идея, что каждый элемент должен иметь высоту хотя бы одного символа.
Если вы добавите overflow:hidden;
к стилям #top и #bottom, это не позволит IE сделать элемент больше, чем вы указали.
Общий совет:
Добавление правильного типа документа на страницу, чтобы она отображалась в режиме соответствия стандартам, очень помогает в том, как IE отображает страницу.
W3C: рекомендуемый список DTD