margin-top: сдвинуть элемент на текщую высоту
Не знаем высоту блока, но блок необходимо сдвинуть вверх на столько, какова текущая высота. Такое возможно?
:root {
--hd: clamp(45px, 8%, 90px);
}
.rd {
width: 200px;
height: 1000px;
}
.block {
background-color: #f00;
position: relative;
height: 100%;
z-index: 1;
}
.child {
height: var(--hd);
background-color: #00f;
margin-top: calc(var(--hd) * -1);
}
<div class='rd'>
<div class="block"></div>
<div class="child"></div>
</div>
Так к примеру, чем больше высота родителя, тем больше выглядывает синий блок из под красного фона. То есть я пытаюсь выполнить смещение блока через margin-top, относительно той высоты которую выставил на этот самый блок.
В итоге получаю, неравномерное смещение. Почему так и как быть когда нельзя прибегнуть к обсолютному позиционированию.