【问题标题】:Hover dropdown menu appears left instead of directly underneath Links anchor悬停下拉菜单显示在左侧,而不是直接在链接锚下方
【发布时间】:2016-07-25 16:30:44
【问题描述】:

这可能很容易弄清楚,但是当将鼠标悬停在 Links 元素上时,下拉菜单会出现在左侧,而不是悬停在 Links 锚点下方时垂直下降。谢谢。

[https://jsfiddle.net/kolinio/p9Lea8g4/6/][1]

CSS

    ul {
    }

    li a,
    .dropbtn {
      text-align: center;
      padding: 14px 16px;
      text-decoration: none;
    }

    .dropdown-content {
      display: none;
      position: absolute;
      background-color: #f9f9f9;
      min-width: 160px;
      box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    }

    .dropdown-content a {
      color: black;
      padding: 12px 16px;
      text-decoration: none;
      display: block;
      text-align: left;
    }

    .dropdown-content a:hover {
      background-color: #f1f1f1
    }

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

    ul {
      margin: 0px;
      padding: 0px;
      border: 0px;
      vertical-align: middle;
      background-color: #a2ded0;

    }

    ul#nlist {
      text-align: center;
      position: relative;
      top: 50%;
      transform: translateY(-50%);
    }

    ul#nlist li {
      display: inline;
    }

HTML

    <ul id='nlist'>
      <li><a href='#' class='home'>Home</a></li>
      <li><a href='#' class='about'>About</a></li>
      <li class="dropdown">
        <a href="#" class="dropbtn">Links</a>
        <div class="dropdown-content">
          <a href="#">Link 1</a>
          <a href="#">Link 2</a>
          <a href="#">Link 3</a>
        </div>
      </li>
      <li><a href='#' class='volunteer'>Volunteer</a></li>
      <li><a href='#' class='contact'>Contact</a></li>
      <li><a href='#' class='calender'>Calender</a></li>
    </ul>

<!-- end snippet -->


    li a,
    .dropbtn {
      text-align: center;
      padding: 14px 16px;
      text-decoration: none;
    }

    .dropdown-content {
      display: none;
      position: absolute;
      background-color: #f9f9f9;
      min-width: 160px;
      box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    }

    .dropdown-content a {
      color: black;
      padding: 12px 16px;
      text-decoration: none;
      display: block;
      text-align: left;
    }

    .dropdown-content a:hover {
      background-color: #f1f1f1
    }

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

    ul {
      margin: 0px;
      padding: 0px;
      border: 0px;
      vertical-align: middle;
    }

    ul#nlist {
      text-align: center;
      position: relative;
      top: 50%;
      transform: translateY(-50%);
    }

    ul#nlist li {
      display: inline;
    }

    _______________________________________________________________>>>



    <ul id='nlist'>
      <li><a href='#' class='home'>Home</a></li>
      <li><a href='#' class='about'>About</a></li>
      <li class="dropdown">
        <a href="#" class="dropbtn">Links</a>
        <div class="dropdown-content">
          <a href="#">Link 1</a>
          <a href="#">Link 2</a>
          <a href="#">Link 3</a>
        </div>
      </li>
      <li><a href='#' class='volunteer'>Volunteer</a></li>
      <li><a href='#' class='contact'>Contact</a></li>
      <li><a href='#' class='calender'>Calender</a></li>
    </ul>


  [1]: https://jsfiddle.net/kolinio/p9Lea8g4/6/

【问题讨论】:

  • 你的小提琴链接错误
  • 感谢@bubesh 指出这一点。
  • @Juhana,你说得对!

标签: html css


【解决方案1】:

试试这个。

HTML

<ul id='nlist'>
        <li><a href='#' class='home'>Home</a></li>
        <li><a href='#' class='about'>About</a></li>
        <li class="dropdown">
            <a href="#" class="dropbtn">Links</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></li>
                </ul>
        </li>
        <li><a href='#' class='volunteer'>Volunteer</a></li>
        <li><a href='#' class='contact'>Contact</a></li>
        <li><a href='#' class='calender'>Calender</a></li>
    </ul>

CSS:

ul {

}

.dropdown{
  position:relative;
}
li a, .dropbtn {
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    left:-9999px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}

.dropdown-content a:hover {background-color: #f1f1f1}

.dropdown:hover .dropdown-content {
    display: block;
    left:0px;
}

ul {
  background-color: #a2ded0;
    margin: 0px;
    padding: 0px;
    border: 0px;
    vertical-align: middle; 
}

ul#nlist {
    text-align: center;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

ul#nlist li {
    display: inline;
}

https://jsfiddle.net/p9Lea8g4/7/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-11
    • 2016-11-11
    • 2021-09-08
    • 1970-01-01
    • 1970-01-01
    • 2014-09-13
    • 1970-01-01
    相关资源
    最近更新 更多