我一直在网上搜索。 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;
}