12

我有以下内容:

    <div id="side-menu" class="sidebar-nav span2">
        <div class="sidebar-link"><span>Link 1</span></div>
        <div class="sidebar-link"><span>Link 2</span></div>
    </div>

当您将鼠标悬停在它们上方时,我试图使两个 div 中的每一个都改变颜色 - 无论您将鼠标悬停在文本的右侧还是左侧。目前,只有当我将鼠标悬停在文本上时,颜色才会改变。知道如何做到这一点吗?这是我对css的小提琴:

http://jsfiddle.net/PTSkR/56/

4

2 回答 2

26

悬停选择器中有一个空格。这很重要,因为空格是 CSS 中的后代选择器

div.sidebar-link :hover{
    background-color: #E3E3E3;
}

这意味着只有悬停的后代.sidebar-link受规则影响。删除空间。

http://jsfiddle.net/ExplosionPIlls/PTSkR/57/

于 2013-05-19T01:26:56.127 回答
1

您可以通过以下代码轻松实现此目的:链接

.cstDiv{
    padding:10px;  /* text-align:center may be used for a good look */
    width:55px;
}

div.cstDiv:hover{
    background-color:gray;    
    color:white;
    cursor:pointer;  /* you may delete this if you want */
}
   <div>
       <div class="cstDiv">Link I</div>
       <div class="cstDiv">Link II</div>
       <div class="cstDiv">Link III</div>
       <div class="cstDiv">Link IV</div>
   </div>

于 2016-09-10T12:07:39.010 回答