#main-section
опущен, потому что раскрывающееся меню расположено в потоке документа.
Когда оно не находится, у него есть display: none
, которое выводит его из DOM.При наведении курсора он переключается на position: block
, что ставит его обратно - и он занимает место и выталкивает основное содержимое.
Вы можете проверить это, добавив желаемый конечный результат display: block
по умолчанию,и посмотрите, как будет выглядеть документ в развернутом состоянии.
Необходимо применить position: absolute
к раскрывающемуся списку, чтобы он не мешал потоку документов.Вы также можете переместить z-index: 1
непосредственно на него, если это содержимое должно быть сверху - или вы можете оставить его на родительском элементе, и оно должно работать так же хорошо.- здесь не проблема с z-индексом.