Учебник по Bootstrap 3

БС ДОМ БС Начать Базовая сетка BS Типография БС Таблицы БС Изображения БС БС Джамботрон БС Уэллс Оповещения о BS Кнопки БС Группы кнопок BS BS Глификоны Значки/этикетки BS Индикаторы прогресса BS БС Пагинация БС пейджер Группы списка BS БС Панели Выпадающие списки БС Свернуть БС Таблетки/таблетки BS БС Навбар БС Формы Входы БС Входы БС 2 Размер ввода BS Медиа-объекты BS БС Карусель BS Модальный Подсказка БС БС Поповер БС прокрутки BS-аффикс БС фильтры

Сетки начальной загрузки

Сетевая система БС BS Сложенный/горизонтальный BS Сетка Малая Сетка BS средняя BS Сетка Большая Примеры сетки BS

Загрузочные темы

Шаблоны БС Тема BS "Просто я" Тема BS "Компания" Тема BS "Группа"

Примеры начальной загрузки

Примеры БС викторина БС Упражнения Сертификат БС

Bootstrap CSS Ref

CSS все классы CSS типографика CSS-кнопки CSS-формы CSS-помощники CSS-изображения CSS-таблицы Выпадающие списки CSS CSS-навигация Глификоны

Bootstrap JS ссылка

JS-аффикс JS-оповещение JS-кнопка JS Карусель Свернуть JS Выпадающий список JS Модальный JS JS всплывающее окно JS прокрутка Вкладка JS JS-подсказка


Плагин Bootstrap Affix (расширенный)


Плагин аффикса

Плагин Affix позволяет элементу прикрепляться (запираться) к области на странице. Это часто используется с навигационными меню или кнопками со значками социальных сетей, чтобы они «прилипали» к определенной области при прокрутке вверх и вниз по странице.

Плагин включает и выключает это поведение (меняет значение CSS positionfrom staticна fixed) в зависимости от положения прокрутки.

Пример 1) Прикрепленная панель навигации:

Пример 2) Прикрепленная боковая панель:

С Affix, когда мы прокручиваем страницу вверх и вниз, меню всегда видно и фиксируется на своем месте.



Как создать фиксированное меню навигации

В следующем примере показано, как создать горизонтальное фиксированное меню навигации:

Пример

<nav class="navbar navbar-inverse" data-spy="affix" data-offset-top="197">

В следующем примере показано, как создать вертикальное фиксированное меню навигации:

Пример

<ul class="nav nav-pills nav-stacked" data-spy="affix" data-offset-top="205">

Объяснение примера

Добавьте data-spy="affix"к элементу, который вы хотите прикрепить.

При желании добавьте data-offset-top|bottomатрибут для расчета положения прокрутки.

Как это работает

Плагин аффикса переключается между тремя классами: .affix, .affix-topи .affix-bottom. Каждый класс представляет определенное состояние. position:fixed Вы должны добавить свойства CSS для обработки фактических позиций, за исключением .affixкласса.

  • Плагин добавляет класс .affix-topили .affix-bottom, чтобы указать, что элемент находится в самом верхнем или самом нижнем положении. На данный момент позиционирование с помощью CSS не требуется.

  • Прокрутка мимо прикрепленного элемента вызывает фактическое добавление — здесь плагин заменяет класс .affix-topили .affix-bottomна .affixкласс (наборы position:fixed). На этом этапе вы должны добавить CSS topили bottomсвойство, чтобы разместить прикрепленный элемент на странице.

  • Если задано нижнее смещение, прокрутка мимо него заменяет .affixкласс на .affix-bottom. Поскольку смещения являются необязательными, для их установки требуется установить соответствующий CSS. В этом случае добавляйте position:absoluteпо мере необходимости.

В первом примере выше плагин Affix добавляет .affixкласс (position:fixed) к элементу <nav>, когда мы прокрутили 197 пикселей сверху. Если вы откроете пример, вы также увидите, что мы добавили в класс topсвойство CSS со значением 0 . .affixЭто делается для того, чтобы панель навигации всегда оставалась в верхней части страницы, когда мы прокрутили 197 пикселей сверху.


Scrollspy & Affix

Использование плагина Affix вместе с плагином Scrollspy :

Горизонтальное меню (навигационная панель)

<body data-spy="scroll" data-target=".navbar" data-offset="50">

<nav class="navbar navbar-inverse" data-spy="affix" data-offset-top="197">
...
</nav>

</body>

Вертикальное меню (сиденав)

<body data-spy="scroll" data-target="#myScrollspy" data-offset="15">

<nav class="col-sm-3" id="myScrollspy">
  <ul class="nav nav-pills nav-stacked" data-spy="affix" data-offset-top="205">
  ...
</nav>

</body>

Полный справочник по аффиксам Bootstrap

Полный справочник по всем методам и событиям аффиксов см. в нашем Справочнике по аффиксам Bootstrap JS .