
w3.css
호버링 가능한 드롭다운
CSS를 사용하여 마우스 오버가 가능한 드롭다운 메뉴를 만드는 방법을 알아보자.
호버링 가능한 드롭다운 만들기
사용자가 요소 위로 마우스를 이동할 때 나타나는 드롭다운 메뉴를 만든다.
1단계) HTML 추가
<div class="dropdown"> <button class="dropbtn">Dropdown</button> <div 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: #04AA6D; color: white; padding: 16px; font-size: 16px; border: none; } /* 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 on hover */ .dropdown:hover .dropdown-content {display: block;} /* Change the background color of the dropdown button when the dropdown content is shown */ .dropdown:hover .dropbtn {background-color: #3e8e41;}
기본 예시
예제 보기
배경색, 패딩 등을 사용하여 드롭다운 버튼의 스타일을 지정했다.
.dropdown 클래스는 position:relative를 사용한다.
이는 드롭다운 콘텐츠를 드롭다운 버튼 바로 아래에 배치할 때 필요하다(position:absolute 사용).
.dropdown-content 클래스는 실제 드롭다운 메뉴를 유지한다.
기본적으로 숨겨져 있으며 호버(아래 참조)에 표시된다.
최소 너비는 160px로 설정되어 있다. 자유롭게 변경할 수 있다.
⭐ 드롭다운 콘텐츠의 너비를 드롭다운 버튼만큼 넓게 하려면 너비를 100%(및 오버플로:auto를 설정하여 작은 화면에서 스크롤할 수 있도록 한다.
우리는 테두리를 사용하는 대신 상자 그림자 속성을 사용하여 드롭다운 메뉴를 “카드”처럼 보이게 만들었다.
우리는 또한 z-index를 사용하여 드롭다운을 다른 요소들 앞에 배치한다.
사용자가 마우스를 드롭다운 버튼 위로 이동할 때 :hover 선택기를 사용하여 드롭다운 메뉴를 표시한다.
참고
W3C School - How TO - Hoverable Dropdown