여러분이 사용하고 계신 브라우저는 HTML5를 지원하지 않기 때문에 몇몇 요소가 제대로 보이도록 JScript를 사용하고 있습니다. 하지만 여러분의 브라우저 설정에서 스크립트 기능이 꺼져있으므로, 현재 페이지를 제대로 확인하시려면 스크립트 기능을 켜주셔야 합니다. How To - 클릭 가능한 드롭다운
How To – 클릭 가능한 드롭다운
3개월전 작성
3개월전 수정

w3.css

클릭 가능한 드롭다운

CSS와 JavaScript를 사용하여 클릭 가능한 드롭다운 메뉴를 만드는 방법을 알아보자.

클릭 가능한 드롭다운 만들기

사용자가 버튼을 클릭하면 나타나는 드롭다운 메뉴를 만든다.

1단계) HTML 추가
<div class="dropdown">
  <button onclick="myFunction()" class="dropbtn">Dropdown</button>
  <div id="myDropdown" class="dropdown-content">
    <a href="#">Link 1</a>
    <a href="#">Link 2</a>
    <a href="#">Link 3</a>
  </div>
</div>

 

드롭다운 메뉴를 열려면 <button>, <a> 또는 <p> 요소와 같은 요소를 사용하자.

컨테이너 요소(예: <div>)를 사용하여 드롭다운 메뉴를 만들고 그 안에 드롭다운 링크를 추가하자.

CSS를 사용하여 드롭다운 메뉴의 위치를 ​​올바르게 지정하려면 버튼과 <div> 주위에 <div> 요소를 래핑한다.

2단계) CSS 추가
/* Dropdown Button */
.dropbtn {
  background-color: #3498DB;
  color: white;
  padding: 16px;
  font-size: 16px;
  border: none;
  cursor: pointer;
}

/* Dropdown button on hover & focus */
.dropbtn:hover, .dropbtn:focus {
  background-color: #2980B9;
}

/* The container 
- needed to position the dropdown content */ .dropdown { position: relative; display: inline-block; } /* Dropdown Content (Hidden by Default) */ .dropdown-content { display: none; position: absolute; background-color: #f1f1f1; min-width: 160px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } /* Links inside the dropdown */ .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } /* Change color of dropdown links on hover */ .dropdown-content a:hover {background-color: #ddd;} /* Show the dropdown menu (use JS to add this class to the .dropdown-content container when the user clicks on the dropdown button) */ .show {display:block;}

 

배경 색상, 패딩, 호버 효과 등으로 드롭다운 버튼을 스타일링했다.

.dropdown 클래스는 position:relative를 사용하는데, 이는 드롭다운 콘텐츠를 드롭다운 버튼 바로 아래에 배치할 때 필요하다(position:absolute 사용).

.dropdown-content 클래스는 실제 드롭다운 메뉴를 유지한다.
기본적으로 숨겨져 있으며 호버(아래 참조)에 표시된다.
최소 너비는 160px로 설정되어 있다. 자유롭게 변경할 수 있다.
⭐ 드롭다운 콘텐츠의 너비를 드롭다운 버튼만큼 크게 하려면 너비를 100%(및 오버플로:auto로 설정하여 작은 화면에서 스크롤할 수 있도록 하자.

우리는 테두리를 사용하는 대신 상자 그림자 속성을 사용하여 드롭다운 메뉴를 “카드”처럼 보이게 만들었다.
우리는 또한 z-index를 사용하여 드롭다운을 다른 요소들 앞에 배치한다.

3단계) ​​자바스크립트 추가
/* When the user clicks on the button,
toggle between hiding and showing the dropdown content */
function myFunction() {
  document.getElementById("myDropdown").classList.toggle("show");
}

// Close the dropdown menu if the user clicks outside of it
window.onclick = function(event) {
  if (!event.target.matches('.dropbtn')) {
    var dropdowns = document.getElementsByClassName("dropdown-content");
    var i;
    for (i = 0; i < dropdowns.length; i++) {
      var openDropdown = dropdowns[i];
      if (openDropdown.classList.contains('show')) {
        openDropdown.classList.remove('show');
      }
    }
  }
}
기본 예시
예제 보기

오른쪽 정렬 드롭다운

기본 예시
예제 보기

Navbar의 드롭다운 메뉴

기본 예시
예제 보기

검색(필터) 드롭다운

기본 예시
예제 보기
참고
Mingg`s Diary
밍구
공부 목적 블로그