Как я могу сделать меню фиксированным сверху при прокрутке

Я хотел бы сделать 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 документация когда можно :)