Ошибка в "При абсолютном позиционировании элемент не существует в
потоке документа и его положение задаётся относительно краёв браузера."
В спецификации к css изложено так "The element is positioned relative to its first positioned (not static) ancestor element"
Иными
словами "Если для элемента задана абсолютная позиция, значения его
свойств top и left интерпретируются как расстояния до ближайшего
родительского элемента, свойство position которого имеет любое значение,
кроме static. Если абсолютно позиционируемый элемент не имеет
позиционируемого предка, его свойства top и left будут определять
координаты относительно начала документа - левого верхнего его угла." -
как сказал Romul в комментах ниже.