html - 使用CSS嵌套下拉菜单

标签 html css

尝试使用简单的 css 嵌套下拉菜单。我正在尝试制作导航菜单。一切似乎都很好,除了当我将鼠标悬停在“新此处”下的“关于我们”部分时,它显示了正确的结果。但问题是当我将鼠标悬停到它下面的下一部分时它并没有消失。我怎么可能解决这个问题?这是The Link For the 片段供您考虑,请告诉我哪里做错了。 这是您要查看的代码..

   .dropbtn2
  {
    position: relative;
    display: none;
  }
  .dropdown {
    position: relative;
    display: inline-block;
  }

  /* Dropdown Content (Hidden by Default) */
  .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 169px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
  }

  /* Links inside the dropdown */
  .dropdown-content a {
    color: black;
    font-size:20px;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
  }

  /* Change color of dropdown links on hover */
  .dropdown-content a:hover {background-color: #f1f1f1}

  /* Show the dropdown menu on hover */
  .dropdown:hover .dropdown-content {
    display: block;
    transition:none;
  }
  .dropdown-content a:hover {
    padding-top:15px;
    transition:ease-in-out .5s;
  }
  .dropdown:hover .dropbtn
  {
    background-color: #8300ff;
    color: #182318;
    padding-top: 500px;
    padding-bottom: 30px;
    padding-right: 20px;
    padding-left: 20px;
    transition: ease-out 0.5s;
    text-decoration: none;
    box-shadow:none;

  }
  /* End*/
  .dropdown-content2 {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width:170px;
    left:170px;
    top:0;
    z-index: 1;
  }

  /* Links inside the dropdown */
  .dropdown-content2 a {
    color: black;
    font-size:20px;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
  }

  /* Change color of dropdown links on hover */
  .dropdown-content2 a:hover {background-color: #f1f1f1}

  /* Show the dropdown menu on hover */
  .dropdown-content:hover .dropdown-content2 {
    display: block;
    transition:none;
  }
  .dropdown-content2 a:hover {
    padding-top:15px;
    transition:ease-in-out .5s;
  }
  .dropdown a:hover .dropbtn2
  {
    padding-bottom: 30px;
    padding-right: 20px;
    padding-left: 20px;
    transition: ease-out 0.5s;
    text-decoration: none;
    box-shadow:none;

  }

  /*TEST*/

最佳答案

您需要将元素更改为悬停,以便仅在悬停第一个链接时显示您的 dropdown-content

要替换的值位于代码笔的第 182 行。将 dropdown-content:hover .dropdown-content2 替换为 .dropdown2:hover .dropdown-content2

第 181-185 行:

  /* Show the dropdown menu on hover */
  .dropdown2:hover .dropdown-content2 { /* change the hover element here */
    display: block;
    transition:none;
  }

关于html - 使用CSS嵌套下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57089487/

相关文章:

html - Bootstrap 只删除一个单元格

html - 如何使用 CSS 创建这个带 Angular 条形

jquery - 如何使用显示 :block 将 <li> 悬停在 <ul> 上显示得非常缓慢

html - 将按钮一个放在右边,两个放在旁边(左边),但在 HTML 中垂直堆叠

javascript - 如何在 ember.js 中相对于单击操作定位模态

jquery - ajax返回成功时改变div的css

html - 不同浏览器的 Flexbox 布局大不相同?

html - 有没有办法使用固定高度容器垂直居中可变长度文本?

javascript - 将 2 列与容器对齐

jQuery hide() 效果不佳