>웹 프론트엔드 >CSS 튜토리얼 >Bootstrap 3, 4, 5에서 하위 메뉴를 어떻게 구현합니까?

Bootstrap 3, 4, 5에서 하위 메뉴를 어떻게 구현합니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-29 09:37:10738검색

How Do I Implement Submenus in Bootstrap 3, 4, and 5?

Bootstrap의 하위 메뉴 구현

Bootstrap 3의 초기 릴리스에는 하위 메뉴 기능을 위한 전용 클래스가 부족했습니다. 그러나 약간의 CSS를 추가하여 하위 메뉴를 구현할 수 있습니다.

Bootstrap 5(2023 업데이트)

하위 메뉴를 구현하려면 하위 메뉴가 닫히지 않도록 JavaScript를 추가하세요. 상위 드롭다운이 열려 있는 경우:

let dropdowns = document.querySelectorAll('.dropdown-toggle')
dropdowns.forEach((dd) => {
    dd.addEventListener('click', function (e) {
        var el = this.nextElementSibling
        el.style.display = el.style.display === 'block' ? 'none' : 'block'
    })
})

또는 CSS를 구체적으로 사용하세요. Navbar 드롭다운의 경우:

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
}

.navbar-nav li:hover > ul.dropdown-menu {
    display: block;
}

Bootstrap 4(2018 업데이트)

Bootstrap 4에서는 .dropdown-submenu 클래스를 제거했습니다. 대신 CSS를 사용하여 하위 메뉴 기능을 구현하세요.

Hover의 Navbar 하위 메뉴:

.navbar-nav li:hover > ul.dropdown-menu {
    display: block;
}
.dropdown-submenu {
    position:relative;
}
.dropdown-submenu>.dropdown-menu {
    top:0;
    left:100%;
    margin-top:-6px;
}

Bootstrap 3

참조 Bootstrap을 사용하여 이 예에 3:

CSS:

.dropdown-submenu {
    position:relative;
}
.dropdown-submenu>.dropdown-menu {
    top:0;
    left:100%;
    margin-top:-6px;
    margin-left:-1px;
    -webkit-border-radius:0 6px 6px 6px;
    -moz-border-radius:0 6px 6px 6px;
    border-radius:0 6px 6px 6px;
}
.dropdown-submenu:hover>.dropdown-menu {
    display:block;
}

.dropdown-submenu>a:after {
    display:block;
    content:" ";
    float:right;
    width:0;
    height:0;
    border-color:transparent;
    border-style:solid;
    border-width:5px 0 5px 5px;
    border-left-color:#cccccc;
    margin-top:5px;
    margin-right:-10px;
}
.dropdown-submenu:hover>a:after {
    border-left-color:#ffffff;
}
.dropdown-submenu.pull-left {
    float:none;
}
.dropdown-submenu.pull-left>.dropdown-menu {
    left:-100%;
    margin-left:10px;
    -webkit-border-radius:6px 0 6px 6px;
    -moz-border-radius:6px 0 6px 6px;
    border-radius:6px 0 6px 6px;
}

마크업:

<ul class="nav navbar-nav">
  <li class="menu-item dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Drop Down<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li class="menu-item dropdown dropdown-submenu">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Level 1</a>
        <ul class="dropdown-menu">
          <li class="menu-item ">
            <a href="#">Link 1</a>
          </li>
          <li class="menu-item dropdown dropdown-submenu">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Level 2</a>
            <ul class="dropdown-menu">
              <li>
                <a href="#">Link 3</a>
              </li>
            </ul>
          </li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

위 내용은 Bootstrap 3, 4, 5에서 하위 메뉴를 어떻게 구현합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.