Bootstrap 4导航栏中的超链接菜单渗入内联表单

时间:2017-04-11 20:07:01

标签: html5 css3 bootstrap-4 twitter-bootstrap-4

根据Bootstrap 4网站,带有表单的导航栏应该可以工作:

https://v4-alpha.getbootstrap.com/components/navbar/#forms

我使用class="form-inline"并在同一个html级别使用ul-tag和3个超级链接。

请参阅此代码:

http://codepen.io/anon/pen/eWOKXL?editors=1010

HTML

<nav class="navbar navbar-toggleable-md fixed-top navbar-light bg-faded">
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01"
     aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
    <div class="collapse navbar-collapse" id="navbarTogglerDemo01">
        <a class="navbar-brand" href="#">my-app</a>

        <div class="form-inline my-2 my-lg-0">
            <div class="form-group">
                <div class="input-group">
                    <span class="input-group-btn">
                        <a class="btn btn-primary">Create</a>
                    </span>
                    <select class="form-control">
                        <option selected >Item AAAAAAAAAAAAAABBBBBBBBBB CCCCCCCCC</option>
                   </select> <span class="input-group-btn">
                <div class="btn-group">
                    <button  class="btn btn-secondary" >Open</button>
                    <button class="btn btn-secondary" data-placement="bottom"  triggers="manual" #p="ngbPopover" [ngbPopover]="popContent" 
                    popoverTitle="Delete?">Delete</button>
                </div>
             </span>
                </div>
            </div>
        </div>

        <ul class="navbar-nav mx-auto mt-2 mt-lg-0">
            <li class="nav-item"> <a class="nav-link">link11111111111111</a></li>
            <li class="nav-item"> <a class="nav-link">link22222222222222</a></li>
            <li class="nav-item"> <a class="nav-link">link33333333333333</a></li>
        </ul>

        <div ngbDropdown class="justify-content-end d-inline-block">
            <button class="btn btn-secondary" id="dropdownMenu1" ngbDropdownToggle>Items</button>
            <div class="dropdown-menu" aria-labelledby="dropdownMenu1">
                <button class="dropdown-item">Item1</button>
                <button class="dropdown-item" >Item2</button>
            </div>
        </div>

    </div>
</nav>

只需调整窗口大小,看到3个menulink会以class="form-inline"渗入主元素。

我该如何解决?看看BS4样本,我看到第一个是menulinks,然后是form-inline元素。我反过来了。

1 个答案:

答案 0 :(得分:1)

我建议您在form-group周围取出input-group。制作2个单独的input-group-btn而不是btn-group。另外,请记住BS4仍处于alpha状态,因此它还不是一个稳定版本。

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

<nav class="navbar navbar-toggleable-md fixed-top navbar-light bg-faded">
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarTogglerDemo01">
        <a class="navbar-brand" href="#">my-app</a>
        <div class="form-inline my-2 my-lg-0">
            <div class="input-group">
                <span class="input-group-btn">
                    <a class="btn btn-primary">Create</a>
                </span>
                <select class="form-control pr-4">
                    <option selected="">Item AAAAAAAAAAAAAABBBBBBBBBB CCCCCCCCC</option>
                </select>
                <div class="input-group-btn">
                    <button class="btn btn-secondary">Open</button>
                </div>
                <div class="input-group-btn">
                    <button class="btn btn-secondary" data-placement="bottom" triggers="manual" #p="ngbPopover" [ngbpopover]="popContent" popovertitle="Delete?">Delete</button>
                </div>
            </div>
        </div>
        <ul class="navbar-nav mx-auto mt-2 mt-lg-0">
            <li class="nav-item"> <a class="nav-link">link11111111111111</a></li>
            <li class="nav-item"> <a class="nav-link">link22222222222222</a></li>
            <li class="nav-item"> <a class="nav-link">link33333333333333</a></li>
        </ul>
        <div ngbdropdown="" class="justify-content-end d-inline-block">
            <button class="btn btn-secondary" id="dropdownMenu1" ngbdropdowntoggle="">Items</button>
            <div class="dropdown-menu" aria-labelledby="dropdownMenu1">
                <button class="dropdown-item">Item1</button>
                <button class="dropdown-item">Item2</button>
            </div>
        </div>
    </div>
</nav>