我希望我用正确的词语正确地问这个问题:我有一个非常基本的CSS下拉菜单,当我将鼠标悬停在每个li上时,它会突出显示(背景颜色)。当我悬停时,我希望能够点击整个li区域来到达链接目的地,而不必找到位于该li中的超链接来执行点击。
对于本次讨论,这里是我菜单的简化:
<div class="catnav">
<ul>
<li><a href="#">CATEGORY</a>
<ul>
<li>Florists</li>
<li>Caterers</li>
<li>Formal Wear</li>
<li>All Categories...</li>
</ul>
</li>
</ul>
</div>
...和CSS:
.catnav ul {list-style:none;margin:0px;padding:0px;}
.catnav li {float:left;text-align:center;position:relative;background:#f5f6f7;padding:0px 10px 0px 10px;}
.catnav li ul li {float:none;width:150px;text-align:left;padding-left:0px 0px 0px 5px;line-height:17px;}
.catnav a {text-decoration:none;color:#548dd4;font-family:arial;}
.catnav li ul {position:absolute;top:21px;left:0px; border:1px solid #ccc;
-moz-box-shadow: 0px 3px 10px #aaa;
-webkit-box-shadow: 0px 3px 10px #aaa;
box-shadow: 0px 3px 10px #aaa;
visibility:hidden;}
.catnav li:hover ul {visibility:visible;z-index:100;}
.catnav li:hover {background:#e0e0e0;}
.catnav li:hover li a {font-size:0.8em;font-weight:normal;visibility:visible;z-index:100;}
任何帮助都会很棒。谢谢!
Ĵ
答案 0 :(得分:1)
试试这行css:
.catnav li ul li a {display:block;width:150px;}
或者您可以使用<li>
(<a>
)包裹<a><li></li></a>
,但这只是不好的做法..
答案 1 :(得分:0)
Found the same question在这里问了一些好的答案。快速回答是使用display:block;
,然后将填充添加到其中,但另一个帖子中的答案应该为您解释一切。