如何自动调整引导导航栏中的下拉框不超过页面宽度?

时间:2019-05-14 06:33:32

标签: css html5 twitter-bootstrap

在下拉菜单中单击时,下拉框超过页面的宽度并显示水平滚动。

帮帮我,如果右侧/左侧是页面的末尾而没有滚动,如何使下拉框自动调整位置(如下图所示)?

演示:https://codepen.io/ramlals/pen/RmoGEx

enter image description here

我知道可以通过为下拉菜单提供边距权限来避免这种情况,但是我需要使用框来自动调整位置。堆栈中的类似问题与下拉菜单/大小相关,而与下拉框无关。

我的代码(bootstrap导航栏示例)如下:

 <nav class="navbar navbar-expand-lg navbar-light bg-light">
                <a class="navbar-brand" href="#">Navbar</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 ml-auto">
                    <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="#">Link</a>
                    </li>
                    <li class="nav-item dropdown">
                      <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                        Dropdown
                      </a>
                      <div class="dropdown-menu w-100" aria-labelledby="navbarDropdown">
                        <a class="dropdown-item" href="#">Action</a>
                        <a class="dropdown-item" href="#">Another action</a>
                        <div class="dropdown-divider"></div>
                        <a class="dropdown-item" href="#">Something else here</a>
                      </div>
                    </li>
                  </ul>

                </div>
              </nav>

谢谢。

1 个答案:

答案 0 :(得分:1)

这很容易,因为您已经应用了position:绝对值到该div元素。现在,只需在下面提到的同一元素中添加一种样式即可:

original_application_version

整个代码如下:

left: -60px;

这会有所帮助。