Относительно чего позиционируется position: absolute

«Относительно чего позиционируется position: absolute» — вопрос из категории CSS, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

position: absolute позиционирует элемент относительно ближайшего предка с position: relative, absolute, fixed или sticky. Если такого предка нет — элемент позиционируется относительно <body>.

Пример:

<div class="parent">
  <div class="child"></div>
</div>
.parent {
  position: relative; /* Точка отсчета для .child */
  width: 200px;
  height: 200px;
  background: #eee;
}

.child {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 50px;
  height: 50px;
  background: red;
}

Без position: relative у .parent элемент .child применил бы позиционирование относительно <body>.