0

我有一个包含无序列表的 div 和一个包含图像的 div。当我将鼠标悬停在列表上时,我希望能够使图像变得透明。

这可能使用css,还是我需要使用jQuery?

4

3 回答 3

4

如果您的图像在列表之后,您可以执行此操作 - http://jsfiddle.net/WYqSu/

HTML

<div>
    <ul>
        <li>list item</li>
        <li>list item</li>
        <li>list item</li>
        <li>list item</li>
    </ul>
</div>

<p> some text </p>

<div id="image">
    <img src="http://lorempixel.com/200/100" />
</div>

CSS

div:hover ~ div#image {
    opacity: .2;
}
于 2012-07-12T21:02:15.983 回答
1

如果 image-div 包含在 ul-div 中,则可以使用 CSS,否则需要使用 JS。

<div id="divtop">
 <ul>
  <li>listitem</li>
 </ul>
 <div id="divinner">
  <img />
 </div>
</div>

<style>
 #divtop:hover #divinner>img
 {
    /* set opacity */
 }
</style>
于 2012-07-12T21:04:44.350 回答
0

我使用 javascript 来实现类似的结果:

javscript:

function changeOpacity (opacity) {
        document.getElementById("element_ID_to_alter").style.opacity = opacity;
    }

HTML:

<div id="hover_div" onmouseover="changeOpacity('.3')" onmouseout="changeOpacity('1.0')">

我对此结果感到非常满意。我希望它可以帮助你!

于 2015-09-16T00:20:02.480 回答