【问题标题】:Making a dropdown menu visible only on hover使下拉菜单仅在悬停时可见
【发布时间】:2013-06-18 18:42:32
【问题描述】:

我一直在网上搜索。 Stack Overflow 上的这个问题 Hovering <a> in CSS without href 并没有以我能理解的方式解决我的问题。

我正在尝试制作一个没有链接的“主”菜单。

从菜单中的每个项目中,我想在悬停或单击项目时创建一个下拉菜单。

我只想用 CSS 来做这个。

我很困惑。我尝试了 z-index、定位和可见性的各种排列。但是,我发现很难达到我需要的结果。我也尝试在外部列表项中添加链接。

这是我的代码:

HTML:

<ul>
        <li>Name 1
          <ul>
            <li><a href="a.html" title="a">anteater</a></li>
            <li><a href="b.html" title="b">bee</a></li>
            <li><a href="c.html" title="c">cat</a></li>
            <li><a href="d.html" title="d">dog</a></li>
          </ul>
        </li>
        <li>Name 2
          <ul>
            <li><a href="e.html" title="e">egg</a></li>
            <li><a href="f.html" title="f">fern</a></li>
            <li><a href="g.html" title="g">goose</a></li>
            <li><a href="h.html" title="h">house</a></li>
          </ul>
        </li>
</ul>

CSS:

ul   {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
li   {
    float: left;
    padding: 30px 15px 20px 15px;
    border-right: dotted #FFFFFF 1px;
    color: #FFFFFF;
    font-size: 11px;
    position: relative;
    z-index: 3;
}
li.end  {
    float: right;
}
a  {
    display: block;
    text-decoration: none;
}
a:link {
    color: #FFFFFF;
}
a:visited {
    color: #FFFFFF;
}
a:hover  {
    color: #0099FF;
}
a:active  {
    color: #FFFFFF;
    overflow: visible;
}
ul li:active ul, ul ul {
    visibility:visible;
}
ul li:active ul, ul ul li {
    visibility:visible;
}
ul li:hover ul, ul ul {
    visibility: visible;
}
ul li:hover ul, ul ul li {
    visibility:visible;
}
ul ul  {
    list-style-type: none;
    margin: 0;
    position: absolute;
    visibility: hidden;
    z-index:-1;
}
ul ul li  {
    float: left;
    padding: 5px 10px;
    border-right: dotted #0000FF 1px;
    background-color: #000000;
    color: #FFFFFF;
    font-size: 11px;
    position: relative;
    visibility:hidden;
}

ul ul li a  {
    display: block;
    text-decoration: none;
}
ul ul li a:link  {
    color: #0000FF;
}
ul ul li a:visited  {
    color: #0000FF;
}
ul ul li a:hover  {
    color: #FFFFFF;
    visibility:visible;
}
ul ul li a:active {
    color: #FFFFFF;
    overflow: visible;
    visibility:visible;
}

【问题讨论】:

    标签: html css drop-down-menu visibility nav


    【解决方案1】:

    见这个例子http://jsfiddle.net/La2L8/

    我认为你的CSS 代码过多

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-16
      • 1970-01-01
      • 2011-07-08
      • 1970-01-01
      • 2011-02-06
      • 1970-01-01
      相关资源
      最近更新 更多