Во-первых, нехорошо ставить и position: absolute
, и float
на один и тот же элемент, поскольку они являются взаимоисключающими формами позиционирования (absolute
переопределяет float
).Вы можете устранить один или другой в зависимости от ваших потребностей.Определите, что более важно для того, что вам нужно сделать.
Во-вторых, кажется, что, имея два вложенных элемента absolute
, вам нужно дать некоторую ширину, чтобы он знал, что что-то находится внутри.Когда я положил width:100%
на .topbar
и .nav
, это позволило меню обрести форму.Но я не знаю, подходит ли ширина для вашей ситуации.
Вы можете абсолютно точно позиционировать .topbar
без width
и исключить absolute
на обоих дочерних элементах, и это, похоже, также работает.
Я не могу дать гораздо большего решения, потому что не знаю, как именно вы хотите, чтобы оно функционировало и позиционировалось.