显示灰色图像悬停在div上,彩色图像悬停在灰色图像上

时间:2013-10-04 07:31:41

标签: css

我想做这样的事情:
在div中显示文本,在悬停时显示文本旁边的灰色图像
并悬停在灰色图像上显示彩色图像。

这就是我所做的事情:

HTML:

<div class='line'>text text 1<a href='#1'><div class='image'>
</div></a></div>

<div class='line'>text text 2<a href='#2'><div class='image'>
</div></a></div>

CSS

.image                  { visibility:hidden; height:48px;width:48px;background-image: url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSZP-OED3SNXR6bzDbYbAxQUUBIobAu60g1Ft9Wapv_ysUd37ANcw);}
.line :hover .image       {visibility:visible;}     
.line .image:hover image        {background-image:     url(http://t2.gstatic.com/images?q=tbn:ANd9GcStjRtP8jtJNFLgnzWT-plN-JGLLb0L4ZSD4wqKksAs517dvj_rSA);}

http://jsfiddle.net/UT56U/1/

没有jQuery或JS可以吗?

1 个答案:

答案 0 :(得分:2)

是的,这是可能的,但你必须使用正确的选择器。

.line :hover .image

此处.line:hover之间的空格意味着.line后代元素正在悬停 - 所以删除空格,让它在悬停时作出反应.line本身。

.line .image:hover image

此处没有.image元素,它本身就是.image的后代,因此此选择器也不适用。改为.line .image:hover

http://jsfiddle.net/UT56U/2/