Навбар не сворачивается в меню гамбургеров - PullRequest
0 голосов
/ 28 апреля 2020

Я пытаюсь сделать свой Навбар ответственным, и когда страница становится меньше, Навбар превращается в меню бургера. Он работал с первой попытки, но теперь не превращается в меню гамбургеров. Мои кнопки и переключатель просто исчезают с панели навигации, когда экран становится меньше.

           <nav class="navbar navbar-expand-lg">
          <a class="navbar-brand"><i class="far fa-chart-bar"></i></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">
                  <li class="nav-item">
                    <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
                  </li>
                          <li class="nav-item">
                            <a class="nav-link" href="news/news.html">News</a>
                          </li>
                        </ul> 
                </ul>
            </div>
            <!-- Here is a switch for Light/Dark mode -->
            <div class="theme-switch-wrapper" id="switch">
                <label class="theme-switch" for="checkbox">
                    <input type="checkbox" id="checkbox" />
                    <div class="slider round"></div>
              </label>
              <em></em>
            </div>

        </nav>

CSS

.navbar.navbar-expand-lg { 
background-color:#6b7fdf;
height: 55px;
width: 100%;
}
.nav-link.dropdown-toggle {
color: black;
font-weight: bold;
margin-right: 0 auto;
}
.navbar-brand {
 margin-top: 10px;
 }

1 Ответ

0 голосов
/ 28 апреля 2020

Изменить HTML разметка, как это. У вас есть два ul закрывающих тега </ul> это неверно.

<nav class="navbar navbar-expand-lg">
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
        <i class="fas fa-bars"></i>
    </button>
    <a class="navbar-brand"><i class="far fa-chart-bar"></i></a>

    <!-- Here is a switch for Light/Dark mode | For Mobile -->
    <div class="theme-switch-wrapper d-lg-none" id="switch">
        <div class="custom-control custom-switch">
            <input type="checkbox" class="custom-control-input" id="customSwitch1">
            <label class="custom-control-label" for="customSwitch1"></label>
        </div>
    </div>
    <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav ml-auto mr-auto">
            <li class="nav-item">
                <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="news/news.html">News</a>
            </li>
        </ul> 
    </div>
    <!-- Here is a switch for Light/Dark mode | for Desktop -->
    <div class="theme-switch-wrapper d-none d-lg-block" id="switch">
        <div class="custom-control custom-switch">
            <input type="checkbox" class="custom-control-input" id="customSwitch1">
            <label class="custom-control-label" for="customSwitch1"></label>
        </div>
    </div>

</nav>

CSS

.navbar.navbar-expand-lg { 
background-color:#6b7fdf;
  height: auto;
width: 100%;
}
.nav-link{
  color: white;
}
.nav-link.dropdown-toggle {
color: black;
font-weight: bold;
margin-right: 0 auto;
}
.navbar-toggler{
  border: 1px solid white;
  color: white;
}

Вы должны добавить пользовательский CSS для navbar-toggler и switch. Мой HTML формат разметки правильный.

Вот CodePen .

Вид рабочего стола:

Desktop view

Мобильный просмотр:

Mobile view

...