Хорошо, ваша проблема в том, что вы на самом деле не понимаете ограничения контейнера HTML и поток.
Я бы потратил некоторое время на изучение учебников по HTML Flow и на точное понимание того, что происходит, так как это сделает вашу жизнь в будущем намного проще.
Еще одна хитрость заключается в размещении границ вокруг каждой содержащей структуры, такой как DIV, чтобы вы могли видеть, как каждый из ваших объектов вложен и т. Д ...
Проблема в том, что когда вы берете и добавляете bottom: 500px ;, вы абсолютно позиционируете нижний колонтитул, это автоматически удаляет его из обычного потока HTML. Я предполагаю, что ваша правая панель инструментов также не работает.
Таким образом, вместо того, чтобы использовать абсолютное позиционирование в нижней или правой панели инструментов, вам нужно будет использовать ограничивающий внешний контейнер, который инкапсулирует всю страницу, а затем размещать каждый элемент на странице в нужном вам порядке, используя float: left, float: right, чтобы получить ваше вертикальное положение. Пока ваш нижний колонтитул является последним в пределах вашего ограничивающего контейнера, и все элементы находятся в потоке, а ширина нижнего колонтитула установлена на 100%, вы должны получить то поведение, которое ищете.