Дмитрий Шмаков, relative так не работает, а вот дочерний-1 absolute имеющий свой дочерний-2 absolute, дочерний-2 будет уже позиционироваться от дочерний-1.
Антон, да из-за этого. Но по какой причине к сожалению я не знаю почему это произошло. Может более опытные в js люди вам ответят. Могу лишь догадываться, что существует эта переменная глобально
Антон, вниз изначально работало, а вот top вызывало ошибку, старайтесь использовать имена переменных по длиннее и желательно минимум из двух слов. Песочница
Сергей Бурдужа, если в новых версиях не поправили, ваш вариант да и мой тоже, его не инициализирует обратно вроде. Вот ветка на github где обсуждалась эта проблема, там и решение повторной инициализации есть.
Все зависит от времени которое тратишь и как быстро понимаешь. Как можно больше практики, и повышается скилл. А обучаться придется всегда, ну если конечно не хочешь зависнуть на однотипной верстке.