Вы можете использовать относительное расположение, чтобы перекрывать ваши элементы. Однако пространство, которое они обычно занимают, все равно будет зарезервировано для элемента:
<div style="background-color:#f00;width:200px;height:100px;">
DEFAULT POSITIONED
</div>
<div style="background-color:#0f0;width:200px;height:100px;position:relative;top:-50px;left:50px;">
RELATIVE POSITIONED
</div>
<div style="background-color:#00f;width:200px;height:100px;">
DEFAULT POSITIONED
</div>
В приведенном выше примере между двумя элементами «ПОЗИЦИЯ ПО УМОЛЧАНИЮ» будет пробел. Это вызвано тем, что для элемента 'RELATIVE POSITIONED' по-прежнему зарезервировано место.
Если вы используете абсолютное позиционирование, вашим элементам не будет зарезервировано никакого пространства, поэтому ваш элемент будет фактически перекрываться, не нарушая документ:
<div style="background-color:#f00;width:200px;height:100px;">
DEFAULT POSITIONED
</div>
<div style="background-color:#0f0;width:200px;height:100px;position:absolute;top:50px;left:50px;">
ABSOLUTE POSITIONED
</div>
<div style="background-color:#00f;width:200px;height:100px;">
DEFAULT POSITIONED
</div>
Наконец, вы можете контролировать, какие элементы располагаются поверх других, используя z-index:
<div style="z-index:10;background-color:#f00;width:200px;height:100px;">
DEFAULT POSITIONED
</div>
<div style="z-index:5;background-color:#0f0;width:200px;height:100px;position:absolute;top:50px;left:50px;">
ABSOLUTE POSITIONED
</div>
<div style="z-index:0;background-color:#00f;width:200px;height:100px;">
DEFAULT POSITIONED
</div>