Nik*_*sev 26 css input navbar bootstrap-4
如何在导航栏中创建100%的搜索输入宽度?
该领域的宽度有限:
<nav class="navbar navbar-light navbar-dark bg-inverse">
<a class="navbar-brand" href="#">Navbar</a>
<ul class="nav navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">About</a>
</li>
</ul>
<ul class="nav navbar-nav pull-xs-right">
<li class="nav-item">
<form class="form-inline ">
<input class="form-control" type="text" placeholder="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</li>
<li class="nav-item">
<a class="nav-link" href="#">User Name</a>
</li>
</ul>
</nav>
Run Code Online (Sandbox Code Playgroud)
这是小提琴:
Zim*_*Zim 30
2018年更新
从Bootstrap 4开始,Navbar是flexbox,因此创建全宽搜索输入更容易.您可以简单地使用w-100和d-inline实用程序类:
<form class="mx-2 my-auto d-inline w-100">
<div class="input-group">
<input type="text" class="form-control" placeholder="...">
<span class="input-group-append">
<button class="btn btn-outline-secondary" type="button">GO</button>
</span>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
http://www.codeply.com/go/sbfCXYgqoO
Bootstrap 3(原始答案)
您可以像这样text-truncate在最后一个导航栏上使用hack li..
<!-- search input not in navbar collapse -->
<nav class="navbar navbar-expand-md navbar-dark bg-dark">
<div class="d-flex flex-grow-1">
<a href="/" class="navbar-brand">Codeply</a>
<form class="mr-2 my-auto w-100 d-inline-block order-1">
<div class="input-group">
<input type="text" class="form-control border border-right-0" placeholder="Search...">
<span class="input-group-append">
<button class="btn btn-outline-light border border-left-0" type="button">
<i class="fa fa-search"></i>
</button>
</span>
</div>
</form>
</div>
<button class="navbar-toggler order-0" type="button" data-toggle="collapse" data-target="#navbar7">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse flex-shrink-1 flex-grow-0 order-last" id="navbar7">
<ul class="navbar-nav">
..
</ul>
</div>
</nav>
Run Code Online (Sandbox Code Playgroud)
在Bootstrap 4中,text-truncate将设置:
<li class="text-truncate">
<form class="input-group">
<input class="form-control" name="search" placeholder="Search Here" autocomplete="off" autofocus="autofocus" type="text">
<div class="input-group-btn">
<button class="btn btn-outline-success" type="submit">Search</button>
</div>
</form>
</li>
Run Code Online (Sandbox Code Playgroud)
这使搜索表单能够填充剩余的宽度而不是换行.
演示 http://www.codeply.com/go/22naSu3c0E
另一种选择是使用table-cell:
overflow: hidden;
white-space: nowrap;
Run Code Online (Sandbox Code Playgroud)
http://www.codeply.com/go/JdbPvotSXg