悬停下拉

Hoverable Dropdown

我试图制作一个可悬停的文本,但它给了我一点视觉错误。我想这样做:http://i.imgur.com/fg1NTab.png

但在我的网站上是这样给出的。

http://vestigedayz.com/wqeq

(在我的网站上按菜单中的 A)

这是我的代码。

   <div class="liste">
                        <div class="dropdown">
                    <ul>  <li><a href="#">A</a></li>    </ul>
                    <div class="dropdown-content">
                        <li><a href="#">AA</a></li>
                        <li><a href="#">AB</a></li>
                        <li><a href="#">AC</a></li>
                        <li><a href="#">AD</a></li>
  </div>
  </div>

                    <ul>  <li><a href="#">B</a></li>    </ul>  

                    <ul>  <li><a href="#">c</a></li>    </ul>  
                    <ul>  <li><a href="#">d</a></li>    </ul>  
                    <ul>  <li><a href="#">e</a></li>    </ul>  
                    <ul>  <li><a href="#">f</a></li>    </ul>  
                    <ul>  <li><a href="#">g</a></li>    </ul>  
                    <ul>  <li><a href="#">h</a></li>    </ul>  
                    <ul>  <li><a href="#">i</a></li>    </ul>  
                    <ul>  <li><a href="#">j</a></li>    </ul>  
                    <ul>  <li><a href="#">k</a></li>    </ul>  
                    <ul>  <li><a href="#">l</a></li>    </ul>  
                    <ul>  <li><a href="#">m</a></li>    </ul>  
                    <ul>  <li><a href="#">n</a></li>    </ul>  
                    <ul>  <li><a href="#">o</a></li>    </ul>  
                    <ul>  <li><a href="#">p</a></li>    </ul>  
                    <ul>  <li><a href="#">q</a></li>    </ul>  
                    <ul>  <li><a href="#">r</a></li>    </ul>  
                    <ul>  <li><a href="#">s</a></li>    </ul>  
                    <ul>  <li><a href="#">t</a></li>    </ul>  
                    <ul>  <li><a href="#">u</a></li>    </ul>  
                    <ul>  <li><a href="#">v</a></li>    </ul>  
                    <ul>  <li><a href="#">w</a></li>    </ul>  
                    <ul>  <li><a href="#">y</a></li>    </ul>  
                    <ul>  <li><a href="#">z</a></li>    </ul>  
            </div>
        </div>
    </div>

和风格 CSS

.header .liste {background:#ffd564;border-bottom:5px solid #ffecb8;font-size:13px;height:50px;overflow:hidden;padding-left:25px;margin-top:30px;}
.header .liste > ul li {float:left;padding-right:30px;margin:17px 0;}
.header .liste > ul li a {text-decoration:none;color:#1b1b1b;text-transform:uppercase;}
.dropdown {
    position: fixed;
    display: table;
}



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

.dropdown:hover .dropdown-content {
    display: inline-table;
}

好的,要将 A 放在正确的位置,您必须将该 ul 元素与其他 ul 元素(B、C、D 等)放在同一层级 所以像这样更改您的列表 div

<div class="liste">
  <ul><li><a href="#">A</a></li></ul>
                        <div class="dropdown">

                    <div class="dropdown-content">
                        <li><a href="#">AA</a></li>
                        <li><a href="#">AB</a></li>
                        <li><a href="#">AC</a></li>
                        <li><a href="#">AD</a></li>
  </div>
  </div>

                    <ul>  <li><a href="#">B</a></li>    </ul>  

                    <ul>  <li><a href="#">c</a></li>    </ul>  
                    <ul>  <li><a href="#">d</a></li>    </ul>  
                    <ul>  <li><a href="#">e</a></li>    </ul>  
                    <ul>  <li><a href="#">f</a></li>    </ul>  
                    <ul>  <li><a href="#">g</a></li>    </ul>  
                    <ul>  <li><a href="#">h</a></li>    </ul>  
                    <ul>  <li><a href="#">i</a></li>    </ul>  
                    <ul>  <li><a href="#">j</a></li>    </ul>  
                    <ul>  <li><a href="#">k</a></li>    </ul>  
                    <ul>  <li><a href="#">l</a></li>    </ul>  
                    <ul>  <li><a href="#">m</a></li>    </ul>  
                    <ul>  <li><a href="#">n</a></li>    </ul>  
                    <ul>  <li><a href="#">o</a></li>    </ul>  
                    <ul>  <li><a href="#">p</a></li>    </ul>  
                    <ul>  <li><a href="#">q</a></li>    </ul>  
                    <ul>  <li><a href="#">r</a></li>    </ul>  
                    <ul>  <li><a href="#">s</a></li>    </ul>  
                    <ul>  <li><a href="#">t</a></li>    </ul>  
                    <ul>  <li><a href="#">u</a></li>    </ul>  
                    <ul>  <li><a href="#">v</a></li>    </ul>  
                    <ul>  <li><a href="#">w</a></li>    </ul>  
                    <ul>  <li><a href="#">y</a></li>    </ul>  
                    <ul>  <li><a href="#">z</a></li>    </ul>  
            </div>

然后找到这些属性并删除左边的填充:

.header .liste {
    background: #ffd564;
    border-bottom: 5px solid #ffecb8;
    font-size: 13px;
    height: 50px;
    overflow: hidden;
    /* padding-left: 25px; */
    margin-top: 30px;
}

然后将打开的下拉菜单向下移动(顶部:50px)并将最小宽度更改为 948px

.dropdown-content {
    /* display: none; */
    position: absolute;
    background-color: #ffecb8;
    min-width: 948px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 12px 16px;
    top: 50px;
}

然后给你的liste li padding left:

.liste li {
    padding-left: 25px;
}

这是结果的屏幕截图:http://screencast.com/t/RD3Akbot

此外,由于结构发生了变化,您将不得不处理悬停问题。

这是悬停的代码:

.liste ul:hover + .dropdown {
    display: block;
}

这表示,当您将鼠标悬停在这个 ul 元素上时,会显示下一个 .dropdown div。所以你所要做的就是在适当的 ul 部分下面添加 .dropdown 部分。我将在下面添加代码片段。

<ul>  <li><a href="#">A</a></li>    </ul>
<div class="dropdown">
                    <div class="dropdown-content">
                        <li><a href="#">AA</a></li>
                        <li><a href="#">AB</a></li>
                        <li><a href="#">AC</a></li>
                        <li><a href="#">AD</a></li>
  </div>
  </div>
<ul>  <li><a href="#">B</a></li>    </ul>
<div class="dropdown">
                    <div class="dropdown-content">
                        <li><a href="#">AA777</a></li>
                        <li><a href="#">AB777</a></li>
                        <li><a href="#">AC777</a></li>
                        <li><a href="#">AD777</a></li>
  </div>
  </div>

哦,我忘了你也必须声明你的 .dropdown display:none。所以当你悬停时它会显示方块。