5

我正在尝试在不使用背景图像的情况下在悬停/翻转时进行纯 CSS 图像更改。到目前为止,我有一张图片,当您翻转该图片时,会出现另一张图片。这是CSS:

#hidden {
display: none;
}

#visible:hover + #hidden {
display: block;
}

因此,当您翻转#visiblediv 时,会#hidden出现 div。这是 jsFiddle:http: //jsfiddle.net/MNyzd/1/

这很好用,但这并不是我想要完成的。我想交换图像。因此,当您翻转时#visible,它应该消失而不是保持可见。我最初的想法是让#visibledivdisplay:none悬停(#visible:hover display:none;),但这不起作用。

那么有谁知道我如何使用这种方法成功地将其变成传统的图像悬停/交换?任何帮助将不胜感激,这里是 jsFiddle ... http://jsfiddle.net/MNyzd/1/

4

3 回答 3

7

使用您进行悬停的容器:

http://jsfiddle.net/MNyzd/8/

.hidden {
    display: none;
}

.container:hover .visible
{
    display: none;
}

.container:hover .hidden {
    display: block;
}

另请参阅此答案:Hide / show content via CSS:hover (or JS if need be)

于 2013-08-09T18:55:45.467 回答
3

像这样?

jsFiddle

div {
    cursor:pointer;
    overflow:hidden;
    width:300px;
}
div > img:nth-child(2), div:hover > img:nth-child(1) {
    display:none;
}
div:hover > img:nth-child(2) {
    display:block;
}
于 2013-08-09T18:57:47.210 回答
0

http://jsfiddle.net/MNyzd/4/

编辑:代码:

#hidden {
display: none;
position: absolute; 
top: 8px;
left: 8px; 
}

#visible:hover + #hidden {
display: block;
}

#hidden, #visible {
width:300px;
height:300px;
}

<div id="visible"><img src="http://b.vimeocdn.com/ps/372/159/3721596_300.jpg"></div>
<div id="hidden"><img src="http://yuccan.com/wp-content/uploads/2013/04/cool-eez-spaced2.png"></div>
于 2013-08-09T18:51:54.467 回答