bootstrap 4 中的垂直对齐表单元素

Vertical align form element in bootstrap 4

这是我第一次使用 bootstrap 4,我认为垂直对齐元素应该很容易,因为我到处都读到 flex 是垂直对齐元素最简单的方法。

问题: 我正在努力在导航栏内垂直对齐我的表单元素。一旦我为文本输入元素分配不同的字体大小,它就会变小​​并且不再垂直对齐:

我的HTML:

<nav class="navbar navbar-toggleable-md py-3 navbar-dark">
    <div class="container">
        <div class="d-flex justify-content-between"><a class="navbar-brand" href="/">TMS</a><button class="navbar-toggler collapsed" type="button" data-toggle="collapse" data-target="#bd-main-nav" aria-controls="bd-main-nav" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button></div>
        <div class="navbar-collapse collapse" id="bd-main-nav" aria-expanded="false">
            <ul class="nav navbar-nav right-spacer">
                <li class="nav-item"><a class="nav-item nav-link" href="/features">Features</a></li>
                <li class="nav-item"><a class="nav-item nav-link" href="/features">Demo</a></li>
                <li class="nav-item"><a class="nav-item nav-link" href="/pricing">Pricing</a></li>
                <li class="nav-item"><a class="nav-item nav-link" href="/contact">Contact</a></li>

                <form class="navbar-form" role="search"><input class="header-search-input form-control" type="text" placeholder="Search projects" name="q"></form>
                <li class="nav-item"><a class="nav-item nav-link" href="/login/">Sign in</a></li>
            </ul>
        </div>
    </div>
</nav>

自定义CSS:

.navbar-dark .header-search-input {
    background-color: #fafafa;
    font-size: .7rem;
}

Fiddle: https://jsfiddle.net/qo33wf3d/(调整输出大小window否则会显示空响应版本)

在表格中使用 my-auto class...

       <form class="navbar-form my-auto" role="search">
            <input class="header-search-input form-control" type="text" placeholder="Search projects" name="q">
       </form>

http://www.codeply.com/go/Zo1Ci90MbH