Возможно ли спозиционировать фиксированный элемент относительно какого-то блока?

Возможно ли сделать так, чтобы элемент со свойсвтом position: fixed находился в границах элемента, относительно которого его спозиционировали. Например, есть блок-обертка с паддингами и я какому-то элементу задаю position: fixed и если пишу свойтво right: 0 или left: 0 и при этом он опирается в крайнуюю левую или крайнуюю правую границу блока, относительно которого фиксированный элемент спозиционирован, ну а если задать right: -10px или left: -10px, то он уже выходит за границы


Ответы (1 шт):

Автор решения: Pavel Grishaev

Если фиксированному блоку не задавать left, right, top или bottom, то он остаётся на месте, где был бы при статичном позиционировании, то есть в контентной области родителя. Поэтому если нужно его двигать, то создайте ему родителя и двигайте родителя. В отличие от absolute родитель имеется в виду прямой (первый), а не спозиционированный (relative | absolute).

.parent {
  margin: 0 0 1000px 100px;
  padding: 30px;
  background: gray;
}

.fixed {
  position: fixed;
  border: 1px solid black;
}
<div class="parent">
  <div class="fixed">Фиксированный</div>
</div>

→ Ссылка