Эффект привносит свойство div-блока: position: relative;
и position: absolute;
Нужно div-блоки обернуть в некий "оберточный" div-блок - так называемый wrapper.
C position: absolute - вообще нужно быть аккуратным.
Попробуйте поиграться.
Ошибку я понял и исправил, но теперь текст выбегает вперед блоков, хотя по структуре Html он стоит в самом конце. Как его переместить в самый конец страницы?
Вот кодСсылка