Почему CSS не показывает содержимое?

Я создаю выпадающее меню. Пока все хорошо, но я хочу показать выпадающий список при наведении курсора. Но я не знаю, почему мой CSS не работает.

вот мой код:

.dropbtn { background-color: red; color: white; padding: 16px; font-size: 16px; border: none; cursor: pointer; } .dropdown { position: relative; display: inline-block; } .dropdown-content { display: none; position: absolute; background-color: red; min-width: 160px; box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); z-index: 1; } .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } .dropdown-content a:hover { background-color: #f1f1f1 } .dropdown:hover { display: block; } .dropdown:hover .dropbtn { background-color: #3e8e41; } 
 <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> 

Всего 2 ответа


просто добавьте имя класса .dropdown-content в ваш css. просто замените код

.dropdown:hover {
  display: block;
}

С

.dropdown:hover .dropdown-content{
  display: block;
}

При наведении показа выпадающего контента тоже

.dropdown:hover  .dropdown-content {
  display: block;
}

 .dropbtn { background-color: red; color: white; padding: 16px; font-size: 16px; border: none; cursor: pointer; } .dropdown { position: relative; display: inline-block; } .dropdown-content { display: none; position: absolute; background-color: red; min-width: 160px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } .dropdown-content a:hover {background-color: #f1f1f1} .dropdown:hover .dropdown-content { display: block; } .dropdown:hover .dropbtn { background-color: #3e8e41; } 
 <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> 


Есть идеи?

10000