Twitter Bootstrap - выпадающие внутри navbar, но за пределами nav-collapse - PullRequest
7 голосов
/ 22 февраля 2012

Я хочу добавить раскрывающийся список на панель навигации, но убедитесь, что при изменении размера браузера на более узкую ширину раскрывающийся список остается видимым на панели навигации и не включается в навигационную панель.

HTML ниже работает.Однако, когда размер страницы изменяется, выпадающий список переходит на следующий ряд и отображается развернутым на панели навигации, оставляя мне очень глубокую панель навигации.

Я вызываю bootstrap-collapse.js и bootstrap-dropdown.js.

У кого-нибудь есть идеи?

<div class="navbar navbar-fixed-top">
  <div class="navbar-inner">
    <div class="container">
      <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </a>
      <a class="brand" href="#">Project</a>
      <div class="nav-collapse">
        <ul class="nav">
          <li class="active"><a href="#">Home</a></li>
          <li><a href="#about">About</a></li>
          <li><a href="#contact">Contact</a></li>
        </ul>
      </div><!--/.nav-collapse -->
      <div class="container">
        <ul class="nav pull-right">
            <li class="divider-vertical"></li>
            <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Sharing<b class="caret"></b></a>
                <ul class="dropdown-menu">
                    <li><a href="#">Twitter</a></li>
                    <li><a href="#">Facebook</a></li>
                    <li><a href="#">Google+</a></li>
                </ul>
            </li>
        </ul>
      </div>
    </div>
  </div>
</div>

Ответы [ 2 ]

11 голосов
/ 16 марта 2012

По словам Марка Отто , одного из разработчиков бутстрапа:

Будут затронуты все выпадающие в .nav в панели навигации. В настоящее время мы не предлагаем способ предотвратить такое поведение.

Однако в свернутой навигационной панели может быть раскрытое раскрывающееся меню. Вы можете сделать это одним из трех способов:

  1. Добавьте атрибут данных в раскрывающийся список (data-no-collapse="true"), чтобы исправить реагирующие селекторы.
  2. Замените класс раскрывающегося списка (class="dropdown-menu-no-collapse"), чтобы перестроить его стили с нуля.
  3. Добавьте еще один класс в выпадающий список (class="dropdown-menu no-collapse), чтобы переопределить адаптивные стили.

Я написал пост в блоге , в котором объясняется, что делать. Первый метод требует редактирования bootstrap-responsive.css, а второй требует изменения bootstrap.css. Вам не нужно менять CSS-код начальной загрузки для третьего метода, но его довольно сложно поддерживать.

0 голосов
/ 14 марта 2012

Это потому, что контейнер дополняется вправо или что-то в этом роде.Используйте маржу справа и маржу слева: -30px;в крайнем правом, соответственно левом неупорядоченном списке.

Не совсем красиво, но пока не исправят ...

...