CSS使div可选择而不是文本?

CSS使div可选择而不是文本?,css,drop-down-menu,navigation,Css,Drop Down Menu,Navigation,我有一个导航下拉元素,我想使其可选择-目前,链接只在文本悬停时有效,而不是它周围的框。是否有一种方法可以在CSS中实现这一点 我的CSS代码: .main-menu { position: absolute; top:90px; right:0px; text-align: right; z-index: 2000; } .main-menu ul { width: 50%; background-color: #333; display: inline; margin: 0; paddi

我有一个导航下拉元素,我想使其可选择-目前,链接只在文本悬停时有效,而不是它周围的框。是否有一种方法可以在CSS中实现这一点

我的CSS代码:

.main-menu {
position: absolute;
top:90px;
right:0px;
text-align: right;
 z-index: 2000;
}

.main-menu ul {
width: 50%;
background-color: #333;
 display: inline;
margin: 0;
padding: 20px 5px;
list-style: none;
color: #fff;
}
.main-menu ul li {
display: inline-block;
margin-right: -10px;
position: relative;
padding: 17px 15px;
cursor: pointer;
color: #fff;
font-size: 14px;
font-weight: 700;
 }
.main-menu ul li a {
color: #fff;
border: none;
}
.main-menu ul li a:hover {
color: #f1c40f;
}
/* sub menu */
.main-menu ul li ul {
position: absolute;
top: 25px;
left: 0;
min-width: 150px;
opacity: 0;
margin: 10px 0px;
padding: 17px 5px 0px 5px;
visibility: hidden;
text-align: left;
}
.main-menu ul li ul li {
display: block;
color: #fff;
margin: 0px -5px;
}
.main-menu ul li ul li:hover {
background: #666;
color: #f1c40f;
}

.main-menu ul li:hover ul {
display: block;
opacity: 1;
visibility: visible;
}

jsiddle是:

我在我的网站上有这个,但我也在这个网站上做到了

看看:

不要在“li”项中添加填充物。而是将锚定标记设置为 显示:内联块;并在上面加上填充物。作者:斯图萨

如在上所述:

Goodluck

方法1 您只需移动

悬停演示-


希望这能有所帮助。

方法2更好,因为在
@SLC中放置
  • 以外的任何东西都是非法的标记。我同意,我确实放了“一个更好的方法,如下所示:”让他们知道这是更好的方法。
    <a href="#nowhere" title="Home"><li>Home</li></a>
    
    <div id="con">
        <ul>
            <li><a href="#test1">Test</a></li>
            <li><a href="#test2">Test</a></li>
            <li><a href="#test3">Test</a></li>
        </ul>
    </div>
    
    #con {
        width: 100%;
        background: #eee;
        text-align: center;
    }
    ul {
        list-style: none;
    }
    li {
        display: inline-block;
        width: 80px;
        height: 50px;
        outline: 1px solid #000;
    }
    
    a {
        display: block;
        height: 100%;
        width: 100%;
    }