Как я могу сделать меню фиксированным сверху при прокрутке
Я хотел бы сделать menubar, который фиксируется в верхней части страницы при прокрутке. Что-то вроде верхнего меню в Facebook.
кроме того, я хочу div с логотипом float слева от menubar, и nav float справа от menubar.
4 ответов
Это должно заставить вас начать
<div class="menuBar">
<img class="logo" src="logo.jpg"/>
<div class="nav">
<ul>
<li>Menu1</li>
<li>Menu 2</li>
<li>Menu 3</li>
</ul>
</div>
</div>
body{
margin-top:50px;}
.menuBar{
width:100%;
height:50px;
display:block;
position:absolute;
top:0;
left:0;
}
.logo{
float:left;
}
.nav{
float:right;
margin-right:10px;}
.nav ul li{
list-style:none;
float:left;
}
#header {
top:0;
width:100%;
position:fixed;
background-color:#FFF;
}
#content {
position:static;
margin-top:100px;
}
чтобы установить div в фиксированном положении, вы можете использовать
position:fixed
top:0;
left:0;
width:100%;
height:50px; /* change me */
на postition:absolute;
тег позиционирует элемент относительно его непосредственного родителя.
Я заметил, что даже в примерах нет места для прокрутки, и когда я попробовал это, это не сработало.
Поэтому, чтобы вытащить плавающее меню facebook,position:fixed;
вместо этого следует использовать тег. Он перемещает / сохраняет элемент в заданном/указанном месте,а остальная часть страницы может прокручиваться плавно-даже с отзывчивыми.
см. атрибут позиции CSS документация когда можно :)