无法关闭移动设备上的CSS下拉菜单

时间:2020-08-25 14:58:36

标签: javascript html css mobile hover

下拉菜单显示完美。但是,即使使用菜单顶部的“关闭”链接,我也无法关闭移动设备上的菜单。奇怪的是,当使用菜单底部的“关闭”链接时,菜单确实关闭了。但是我需要菜单顶部的关闭链接才能正常工作-看起来要好得多。

关于以任何方式关闭移动设备上的下拉菜单的任何建议(使用关闭链接,在菜单外部点击等)?我只想用CSS关闭它。 Javascript将是我的第二选择。我不熟悉Jquery或AJAX等,因此仅在可能的情况下才需要使用CSS和Javascript。尚未找到任何在线有效的答案。

.dropbtn {
  background-color: gainsboro;
  color: black;
  border: 1px solid black;
  padding: 4px;
  font-size: 12px;
  cursor: pointer;
}

.dropbtn:hover,
.dropbtn:focus {
  background-color: silver;
}

#closeMobileMenu {
  padding;
  0px;
}

ul {
  padding: 0;
  margin: 0;
}

li.dropDownActivator {
  display: inline;
  position: relative;
  margin-right: 65px;
}

li.dropDownLink {
  display: block;
  background: silver;
  padding: 10px;
}

ul ul {
  position: absolute;
  display: none;
  left: 0;
  top: 100%;
}

li.dropDownActivator:hover ul {
  display: block;
}

li.dropDownActivator:hover ul #closeMobileMenu:active {
  display: none;
}
<ul>
  <li class="dropDownActivator">

    <button class="dropbtn">Menu</button>
    <ul>
      <!-- this 'Close' link does NOT close menu -->
      <li class="dropDownLink"><a href="" id="closeMobileMenu">Close</a></li>
      <li class="dropDownLink"><a href="example.com">Menu link 1</a></li>
      <li class="dropDownLink"><a href="example.com">Menu Link 2</a></li>
      <li class="dropDownLink"><a href="example.com">Menu Link 3</a></li>
      <!-- *** Strangely this link DOES close the menu, but the close link above doesn't -->
      <li class="dropDownLink"><a href="" id="closeMobileMenu">Close</a></li>
    </ul>
  </li>
</ul>

0 个答案:

没有答案