悬停元素,在父元素的兄弟子元素上显示悬停效果

3

现在我们来看一下,我不确定是否已经完全掌握了逻辑。

以下是我正在使用的内容(bootply演示在此)。

<ul>
    <li class="row">
        <span class="category col-sm-2 highlight">Architecture</span> 
        <span class="title col-sm-4"><a href="#">Hello world!</a></span>
        <span class="publication col-sm-2 hidden-xs">Magazine</span>
        <span class="year col-sm-2 hidden-xs">2007</span>  
    </li>
    <li class="row">
        <span class="category col-sm-2 invisible">Architecture</span> 
        <span class="title col-sm-4"><a href="#">Keep them coming</a></span>
        <span class="publication col-sm-2 hidden-xs">Magazine</span>
        <span class="year col-sm-2 hidden-xs">2007</span>  
    </li>
    <li class="row">
        <span class="category col-sm-2 invisible">Architecture</span> 
        <span class="title col-sm-4"><a href="#">The other posts</a></span>
        <span class="publication col-sm-2 hidden-xs">Magazine</span>
        <span class="year col-sm-2 hidden-xs">2007</span>  
    </li>
    <li class="row">
        <span class="category col-sm-2">Cities</span> 
        <span class="title col-sm-4"><a href="#">Tezt</a></span>
        <span class="publication col-sm-2 hidden-xs">Magazine</span>
        <span class="year col-sm-2 hidden-xs">2007</span>  
    </li>
</ul>

这个想法是,在悬停在 span.title 中的 a 元素时,更改出版物和年份文本的颜色。我还在寻找一种方法来更改相同类型的第一个 .row 中的 span.category 的颜色(即悬停“另一篇文章”应更改第一个 .row 中的 span.category 的颜色)。这是否可以通过纯 CSS 实现?


1
我怀疑需要脚本编写以及CSS。 - Nitesh
为什么不将hover应用于li元素,并编写如下CSS:li:hover .title{...},li:hover .category{...} - Andrew
@user2549787 没错! - INT
@Andrew 因为我希望悬停区域仅限于 span.title 中的 a 元素。 - INT
@INT 我认为这在纯CSS中不可能实现,因为您无法选择前一个兄弟元素 :S - nkmol
显示剩余4条评论
1个回答

6
我明白你想在这里做什么,对于这种情况,你可以使用以下选择器。这样当鼠标悬停在 li 上时,它也会将颜色应用于第一个 span
.row:hover span:nth-of-type(1) {
   color: red;
}

我刚刚检查了您的fiddle中的DOM,并希望对其中的一些内容进行修改。

演示hoverhello上,看到第一个span颜色会改变)

演示2(DOM已更改)- 这只是一个大致的想法,我已经为您提供了选择器,但这仍需要进行DOM更改。


在你的代码中更改了演示


根据您的评论,现在您可以突出显示所有带有标题的标签。
ul li div.row:hover > span {
   color: red;
}

最终演示


2
+1 给你,你得到了你应得的积极回报 ;) - @Mr.Alien - Nitesh
2
让它变得“完美”- @BindiyaPatoliya - Nitesh
这是帖子链接:http://stackoverflow.com/questions/20139856/bootstrap-3-affix-width-of-the-div-the-getting-changed-of-scroll。请帮帮我,我被Bootstrap 3 Affix卡住了。 - Unknown User
1
这真的太棒了@Mr.Alien,非常感谢!哇,我没想到会有这么多人感兴趣 :) - INT
1
@INT 如果您认为将鼠标悬停在标题上会使所有相关行变色,那么答案是否定的。您只能一次突出显示一行。 - Mr. Alien
显示剩余15条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接