Почему моя загрузочная навигационная панель не отображается в строке?

Вот мой html с использованием bootstrap (я уверен, что bootstrap установлен правильно)

<nav class="navbar navbar-inverse">
    <div class="container-fluid">

        <div class="navbar-header">
            <a class="navbar-brand">Rebar</a>
        </div>

        <div>
            <ul class="nav navbar-nav">
                <li><a href="#">Link</a></li>
                <li><a href="#">Link</a></li>
                <li><a href="#">Link</a></li>
            </ul>
        </div>
    </div>
</nav>

Когда он отображает три ссылки, они отображаются как элементы блока.

Ответы

Ответ 1

Это потому, что в Bootstrap css для li это:

.nav>li {
  position: relative;
  display: block;
}

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

EDIT: Обновлен снипп для работы по запросу (см. Комментарии ниже этого ответа)

.navbar .container-fluid>.navbar-header {
  float: left;
  margin-right: 10px;
}
.navbar .navbar-nav {
  float: left;
  margin: 5px;
}
.nav>li {
  float: left;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<nav class="navbar navbar-inverse">
  <div class="container-fluid">

    <div class="navbar-header">
      <a class="navbar-brand">Rebar</a>
    </div>

    <div style="display: inline-block;">
      <ul class="nav navbar-nav">
        <li><a href="#">Link</a>
        </li>
        <li><a href="#">Link</a>
        </li>
        <li><a href="#">Link</a>
        </li>
      </ul>
    </div>
  </div>
</nav>

Ответ 2

В настоящее время на Bootstrap 4. Гибкая компоновка, по-видимому, по умолчанию является столбчатой и в моей экосистеме.

Самое непосредственное переопределение для этого случая использования:

.navbar-nav { 
    flex-direction: row;
}

Ответ 3

Я не говорю, что другие ответы неверны в любом случае, но все, что действительно необходимо для выполнения исходного вопроса, - это запись в файле подтемы CSS:

.nav.navbar-nav li {
    float: left;
}

Следует отметить, что класс до li будет меняться в зависимости от выбора в разделе "Внешний вид" темы и других факторов. Например, прямо из коробки класс был бы.menu.nav li

Ответ 4

Если вы так хотите, проверьте этот DEMO

<nav class="navbar navbar-default navbar-static-top" id="topnavbar">
    <div class="container">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#top_navbar" aria-expanded="false" aria-controls="navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
        </div>
        <div id="top_navbar" class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
                <li>
                    <a href="#">Link 1</a>
                </li> 
                <li>
                    <a href="#">Link 2</a>
                </li>
                <li>
                    <a href="#">Link 3</a>
                </li>

            </ul>

        </div>
    </div>
</nav>

Ответ 5

Я столкнулся с той же проблемой. Попробуй это:

.navbar-nav {
  display: inline-block;
}

.navbar-nav>li {
   display: inline-block;
}

Это сработало для меня

Ответ 6

Вы можете сделать встроенный navbar легко с помощью этого настраиваемого класса CSS:

Css:

.nav.inline-navbar>li{
    display: inline-block;
}

Теперь используйте его в своем Html:

.....
<ul class="nav navbar-nav inline-navbar">
   ......
</ul>
.....

Ответ 7

В настоящее время на Bootstrap 4 встроенный navbar может быть достигнут добавлением класса "nav-item" на элементах списка и "nav-link" класса по таким тегам:

<nav class="navbar navbar-inverse">
    <div class="container-fluid">

        <div class="navbar-header">
            <a class="navbar-brand">Rebar</a>
        </div>

        <div>
            <ul class="nav navbar-nav">
                <li class="nav-item">
                   <a class= "nav-link" href="#">Link</a>
                </li>
                <li class="nav-item">
                   <a class= "nav-link" href="#">Link</a>
                </li>
                <li class="nav-item">
                   <a class= "nav-link" href="#">Link</a>
                </li>
            </ul>
        </div>
    </div>
</nav>

Ответ 8

Просто столкнулся с этой проблемой с BS4. Я узнал, что мне нужно добавить navbar-expand-lg для моего навигатора.

<nav class="navbar navbar-expand-lg">

Ответ 9

Для изменения быстрого добавления я добавляю style="display: inline" в положение ниже:

    <div class="collapse navbar-collapse" id="navbarSupportContent" style="display: inline">
        <ul class="navbar-nav mr-auto">
            <li class="nav-item active">
                <a class="nav-link" href="#" onclick="toggleContent('single')">One Line Param</a>
            </li>

            <li class="nav-item active">
                <a class="nav-link" href="#" onclick="toggleContent('multi')">Multi Line Param</a>
            </li>

        </ul>
    </div>