Я думаю, что вам не хватает того, что область просмотра считается самым верхним элементом.
<html>
<head>
<style type="text/css">
#abs{
position: absolute;
top: 128px;
right: 0px;
width: 100px;
height: 100px;
background-color: #333;
}
</style>
<title>test</title>
</head>
<body>
<div id="abs">
test
</div>
</body>
</html>
Это имитирует поведение, которое вы сказали, что вы видите. Если вы измените размер области просмотра, раздел #abs следует за правым краем. Добавление элемента шириной 2000px не меняет этого.
<html>
<head>
<style type="text/css">
#wide{
width: 2000px;
height: 1px;
}
#abs{
position: absolute;
top: 128px;
right: 0px;
width: 100px;
height: 100px;
background-color: #333;
}
</style>
<title>test</title>
</head>
<body>
<div id="wide">
wide
</div>
<div id="abs">
test
</div>
</body>
</html>
Так что я думаю, что ваша главная проблема в том, что ваше предположение просто неверно. Абсолютное позиционирование относится к области просмотра, когда ничто другое не имеет относительной или абсолютной позиции, которая его содержит.