【问题标题】:Nav hover link issue导航悬停链接问题
【发布时间】:2020-10-18 14:53:39
【问题描述】:

当我将鼠标悬停在每个 li 标签链接上时,它会打开子子菜单,当我将鼠标悬停在链接 3 上时,我无法解决我想要的这个问题,例如它的子菜单只能在它前面打开,当你将鼠标悬停在链接 1 或 2 不显示,我尝试使用不透明度 0 和 1 解决它,但它也不起作用。

HTML

<li class=" dropdown">
    <a class="nav-link" href="#">
       <span>mega-menu</span><i class="fas fa-long-arrow-down ic-sm"></i> </a>
      <ul class="dropdown-content">
          <li><a href="#">Link 1</a></li>
          <li><a href="#">Link 2</a></li>
          <li><a href="#">Link 3 </a>
              <ul class="dropleft-content">
                  <li><a href="">SUB SUB 1</a></li>
                  <li><a href="">SUB SUB 2</a></li>
                  <li><a href="">SUB SUB 2</a></li>
              </ul>
            </li>
      </ul>
     
  </li>

CSS

.dropdown-content {
    display: none;
    position: absolute;
    top: 40px;
    left: 0px;
    background-color: #f9f9f9;
    min-width: 200px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.2);
    z-index: 1;
    background-color: rgb(45, 98, 214);
  }
  .dropdown-content a {
    color: white;
    line-height: 2;
    margin: 7px 20px;
    text-decoration: none;
    display: block;
    font-size: 14px;
  }
  
  .dropdown:hover .dropdown-content {
    display: block;
  }

.nav-item .dropdown-content .move-end{
    position: absolute;
    right: 7px;
    top: 15px;
}

.dropdown-content .dropleft-content{
    display: none;
    width: max-content;
    position: absolute;
    top: 0px;
    left: 161px;
    background-color: rgb(45, 98, 214);
    z-index: 2;
}

.dropdown-content:hover .dropleft-content{
    display: block;
}
.dropleft-content a{
    font-size: 14px;
}
.dropdown-content li,.dropleft-content li{
    width: 100%;
    overflow: hidden;
    border-bottom: 1px solid rgba(255, 255, 255, 0.45);
}
.dropdown-content li:last-child , .dropleft-content li:last-child{
    border-bottom: none;
}

编辑这里是每个想要使用 bootstrap 的大型手册的人的修复:

HTML

<li class=" dropdown">
    <a class="nav-link" href="#">
       <span>mega-menu</span><i class="fas fa-long-arrow-down ic-sm"></i> </a>
      <ul class="dropdown-content">
        <li><a class="hovers" href="#">Link 1 </a>
            <ul class="dropleft-content">
                <li><a href="">SUB SUB 1</a></li>
                <li><a href="">SUB SUB 2</a></li>
                <li><a href="">SUB SUB 2</a></li>
            </ul>
          </li>
          <li><a href="#">Link 2</a></li>
          <li><a class="hovers" href="#">Link 3 </a>
              <ul class="dropleft-content">
                  <li><a href="">SUB SUB 1</a></li>
                  <li><a href="">SUB SUB 2</a></li>
                  <li><a href="">SUB SUB 2</a></li>
              </ul>
            </li>
      </ul>
     
  </li>

CSS

.dropdown-content {
    display: none;
    position: absolute;
    top: 40px;
    left: 0px;
    background-color: #f9f9f9;
    min-width: 200px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.2);
    z-index: 1;
    background-color: rgb(45, 98, 214);
  }
  .dropdown-content a {
    color: white;
    line-height: 2;
    margin: 7px 20px;
    text-decoration: none;
    display: block;
    font-size: 14px;
  }
  
  .dropdown:hover .dropdown-content {
    display: block;
  }

.dropdown-content .dropleft-content{
    display: none;
    width: max-content;
    background-color: rgb(45, 98, 214);
    z-index: 2;
}

.dropdown-content:hover .dropleft-content{
    display: block;
    position: absolute;
    left: 201;
    margin-top: -42px;
}
.dropleft-content a{
    font-size: 14px;
}

.dropdown-content li,.dropleft-content li{
    width: 100%;
    overflow: hidden;
    border-bottom: 1px solid rgba(255, 255, 255, 0.45);
}
.dropdown-content li:last-child , .dropleft-content li:last-child{
    border-bottom: none;
}

ul.dropdown-content li {
    display:  none;
}
ul.dropdown-content > li {
    display: list-item;
}
ul.dropdown-content li:hover > ul > li {
    display: list-item;

【问题讨论】:

    标签: html css hyperlink navigation


    【解决方案1】:

    输出:Link here

    .dropdown-content {
        display: none;
        position: relative;
        top: 40px;
        left: 0px;
        background-color: #f9f9f9;
        min-width: 200px;
        box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.2);
        z-index: 1;
        background-color: rgb(45, 98, 214);
      }
      .dropdown-content a {
        color: white;
        line-height: 2;
        margin: 7px 20px;
        text-decoration: none;
        display: block;
        font-size: 14px;
      }
      
      .dropdown:hover .dropdown-content {
        display: block;
    }
    
    
    ul.dropdown-content li {
        display:  none;
    }
    ul.dropdown-content > li {
        display: list-item;
    }
    ul.dropdown-content li:hover > ul > li {
        display: list-item;
    }
    
    .dropleft-content a{
        font-size: 14px;
    }
    

    【讨论】:

    • 它的工作,但它的位置不正确我怎样才能修复它的位置link
    • 我通过添加 margin-top 来修复它:-42px,谢谢 sidverma :)
    猜你喜欢
    • 2021-08-03
    • 1970-01-01
    • 2017-06-11
    • 2012-10-31
    • 2015-05-24
    • 2017-11-12
    • 2019-11-27
    • 2019-07-22
    • 2014-05-19
    相关资源
    最近更新 更多