2012-06-30 2 views
14

Я новичок в Twitter Bootstrap и хочу иметь NavBar у основания глубокого MastHead и когда пользователь вертикально прокручивает страницу, а NavBar попадает в начало страницы, измените стиль так, чтобы NavBar стал фиксированным. Эффект, который я хочу, тот же, что и http://www.happycog.com/, только с помощью Bootstrap NavBar.Сделать прокрутку NavBar Stick в верхней части браузера в Bootstrap

Итак, реальный вопрос заключается в том, как запускать стиль navbar-fixed-top, когда NavBar прокручивается до позиции 0, т.е. вершины браузера.

Любые идеи или указатели будут оценены. Спасибо.

+0

CSS - позиция: фиксированная; –

+0

У вас есть пример с subnav в [booststrap doc] (http://twitter.github.com/bootstrap/javascript.html) – Sherbrow

+0

Это дубликат: http://stackoverflow.com/questions/ 9179708/replicating-bootstraps-main-nav-and-subnav По существу вам нужно добавить и удалить фиксированный класс, когда полоса прокрутки попадает в соответствующую точку. – ForbesLindesay

ответ

5

Для этого вам нужно будет использовать javascript. Вот решение, которое полагается на jQuery, чтобы преобразовать позиционирование навигатора в фиксированное, как только оно попадает в верхнюю часть страницы, а также вставить временный div на свое место, чтобы предотвратить изменение макета.

http://jsfiddle.net/T6nZe/

3

Вы можете попробовать CSS3 липкое положение:

.sticky { 
    position: sticky; 
    top: 10px; /* When the element reaches top: 10px, it becomes fixed. */ 
    z-index: 100; 
} 

Browser поддержка: http://caniuse.com/#feat=css-sticky

+1

позиция: липкая имеет довольно ограниченную поддержку, без Chrome, IE или Android http://caniuse.com/#search=sticky – Lewis42

1

В прицеливания для совместимости браузера, следующий может быть больше пользы.

.sticky { 
    position: -webkit-sticky; 
    position: -moz-sticky; 
    position: -ms-sticky; 
    position: -o-sticky; 
    position: sticky; 
    top: 10px; 
    z-index: 100; 
} 
6

Класс CSS navbar-fixed-top - это то, что вы хотите добавить.

Вот пример:

<nav class='navbar navbar-inverse navbar-fixed-top sticky' role='navigation'> 
    <!-- nav content --> 
</nav> 
Смежные вопросы