引导 4 - 导航栏搜索栏中心



我目前正在努力将搜索栏集中在导航内。我尝试了很多不同的东西,比如mr-atuoml-automx-auto但我就是无法让元素移动。我不想使用单个像素,因为那样在移动设备上看起来会很糟糕。 以下是酒吧需要在哪里以及当前位置的一个小演示:https://i.stack.imgur.com/qDE7d.jpg

这是我的导航栏的代码:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html lang="nl">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script src="https://use.fontawesome.com/0ba2bca7b4.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
</head>
<body>
  <nav class="navbar navbar-expand-lg navbar-light bg-light navbar-custom z-depth-half">
    <div class="container">
      <a class="navbar-brand" href="#">
        <i class="fa fa-skype"></i>
      </a>
      <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
          <span class="navbar-toggler-icon"></span>
       </button>
      <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav mr-auto">
          <li class="nav-item">
            <a href="#" class="nav-link">Vragen</a>
          </li>
          <li class="nav-item">
            <a href="#" class="nav-link">Aanbieders</a>
          </li>
        </ul>
        <ul class="navbar-nav">
          <li class="nav-item" style="border-right: 0.1rem solid lightgrey">
            <form class="form-inline">
              <input class="form-control mr-sm-2 search-input" type="search" placeholder="Zoeken..." name="search" id="search">
              <button class="btn btn-search my-2 my-sm-0 " type="submit">
                 <i class="fa fa-search"></i>
              </button>
            </form>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="">Aanmelden</a>
          </li>
          <li class="nav-item">
            <a class="nav-link btn nav-register-btn" href="">Registreren</a>
          </li>
      
        </ul>
      </div>
    </div>
  </nav>
</body>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
</html>

提前感谢!

你将不得不稍微改变你的HTML结构。将表单移出 UL

.HTML:

...
</ul>
<form class="form-inline">
   <input class="form-control mr-sm-2 search-input" type="search" placeholder="Zoeken..." name="search" id="search">
   <button class="btn btn-search my-2 my-sm-0 " type="submit">
      <i class="fa fa-search"></i>
   </button>
</form>

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

.CSS:

.form-inline{
  width: 100%;
  display: flex;
  justify-content: center;
}
.form-inline #search{
  width: 50%;
}

小提琴

一种解决方案是为您的.form-inline分配一个最小宽度,并让.search-input与弹性框一起增长:

.form-inline {
  min-width: 500px;
}
.search-input {
  flex-grow: 3;
}

代码笔

最新更新