У меня такое чувство, что это будет связано с тем, что содержимое div #mainContent неправильно выталкивает контейнер должным образом. Вы должны быть в состоянии исправить это несколькими различными способами, например, используя очищающий div.
Добавьте следующий код:
.clearfix{
clear:both;
}
И добавьте div с классом clearfix перед закрытием основного содержимого div:
<div id="mainContent">
<div id="rightSide">
...
</div>
<div id="content">
...
</div>
<div class="clearfix"/>
</div>
Это должно напоминать браузеру принудительно открывать div mainContent для соответствия его содержимому.