html - Bootstrap 全 Angular 下拉菜单

标签 html twitter-bootstrap css

我有一个我无法解决的问题。找到了很多与我的问题相关的主题,但无法弄清楚如何解决。我有 bootstrap 下拉菜单,有 12 个元素,我正在尝试制作全宽下拉菜单,但下拉菜单内容超出了网站宽度。有什么办法可以让他们转到另一条线。我尝试使用 flexbox 但无法工作,我尝试使用 display: table,但无法工作。

            .navbar .navbar-nav {
            margin: 0 auto;
        }

        .navbar .nav-item a {
            color: #FFF;
        }


        .navbar .dropdown-menu {
            background-color: rgba(0,0,0,0.8);
            top: 90%;
        }


        .nav > li.dropdown.show {
          position: static;
        }

        .nav > li.dropdown.show .dropdown-menu {
          display: flex;
        /*  flex-wrap: wrap;*/
          border-radius: 0px;
          width: 100vw !important;
          text-align: center;
          left: 0;
          right: 0;
        }

        .dropdown-menu > a {
          height: 50px;
          line-height: 50px;
          vertical-align: middle;
        }


        .navbar-nav .nav-link {
            padding-right: 0;
            padding-left: 1.8rem;
        }

        .dropdown-item {
            padding-left: 1.8rem;
        }

        .dropdown-item:hover {
            background-color: rgba(0,0,0,0.3);   
        }

和 HTML:

<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
                    <a class="navbar-brand" href="#">
                    <img class="logo" src="images/gwne.png" alt="">
                    </a>
                    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
                        <span class="navbar-toggler-icon"></span>
                    </button>
                    <div class="collapse navbar-collapse" id="navbarNavDropdown">
                        <ul class="nav navbar-nav ml-auto mr-5">
                            <li class="nav-item dropdown">
                            <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                            Channel
                            </a>
                            <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                                <a class="dropdown-item" href="#">Esports News</a>
                                <a class="dropdown-item" href="#">Global Gamer News</a>
                                <a class="dropdown-item" href="#">Girls of the Game</a>
                                <a class="dropdown-item" href="#">Mobile News</a>
                                <a class="dropdown-item" href="#">Tech Report</a>
                                <a class="dropdown-item" href="#">VR Report</a>
                                <a class="dropdown-item" href="#">Gossip Rumors & Reviews</a>
                                <a class="dropdown-item" href="#">Health & Psych Report</a>
                                <a class="dropdown-item" href="#">Teams Leagues & Publishers</a>
                                <a class="dropdown-item" href="#">Point - Counterpoint</a>
                                <a class="dropdown-item" href="#">Tips & Tricks</a>
                                <a class="dropdown-item" href="#">Exclusive Interviews</a>
                            </div>
                            </li>
                            <li class="nav-item active">
                            <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
                            </li>
                        </ul>
                    </div>
                </nav>

提前致谢。

Screenshot

最佳答案

.nav > li.dropdown.show .dropdown-menu { ( 和 text-align:center 中删除 display:flex ) 并将 display:inline 添加到您的链接中

.nav > li.dropdown.show .dropdown-menu {
  /* display: flex;*/
  border-radius: 0px;
  width: 100vw !important;
  /*text-align: center;*/
  left: 0;
  right: 0;
}

.dropdown-menu > a {
  height: 50px;
  line-height: 50px;
  vertical-align: middle;
  display: inline;
}

这是一个 fiddle :https://jsfiddle.net/28g9f3ko/6/

如果需要,可以使用media-queries 恢复移动设备上的全宽

关于html - Bootstrap 全 Angular 下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49680771/

相关文章:

javascript - 根据水平滚动的内容计算以像素为单位的 div 宽度

javascript - Ajax 不仅返回特定 div 的数据,还返回完整的 html 结构

html - 特定于 Mozilla 的 CSS

jQuery 切换类以删除高亮

html - 左边框行的表不一致行为

javascript - 如何关闭模态窗口并使用相同的链接自动导航到 anchor ?

php - 无法使用 bootstrap Modal 从 MySQL 删除数据

python - BeautifulSoup 连续 block

html - 如何将 Bootstrap 下拉子菜单获取到 'dropup'

html - 带有图像背景的无序列表,如果 1 或 2 行,则使其高度相同