从背景图像淡入淡出到悬停
我想将我的第一个背景图像淡化为应该在悬停时使用的背景图像,然后在用户移开鼠标后再次关闭。可以使用jQuery。
这是我到目前为止所得到的:
<ul style="top: -70px; display: block; padding-left: 205px;" id="cats-menu" class="nav superfish sf-js-enabled">
<a href="http://www.ballpointtech.com/category/guides/"></a><li id="li_guides" onclick="window.location = 'http://www.ballpointtech.com/category/guides/';"><a href="http://www.ballpointtech.com/category/guides/"> </a></li>
<a href="http://www.ballpointtech.com/category/news/"></a><li id="li_news" onclick="window.location = 'http://www.ballpointtech.com/category/news/';"><a href="http://www.ballpointtech.com/category/news/"> </a></li>
<a href="http://www.ballpointtech.com/category/reviews/"></a><li id="li_reviews" onclick="window.location = 'http://www.ballpointtech.com/category/reviews/';"><a href="http://www.ballpointtech.com/category/reviews/"> </a></li>
<a href="http://www.ballpointtech.com/category/tipstricks/"></a><li id="li_tipstricks" onclick="window.location = 'http://www.ballpointtech.com/category/tipstricks/';"><a href="http://www.ballpointtech.com/category/tipstricks/"> </a></li>
</ul>
<style type="text/css">
#li_guides {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Guides-Still1.png');
width:130px;
height:92px;
}
#li_guides:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Guides-Rollover1.png');
}
#li_guides:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Guides-Click2.png');
}
#li_reviews {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Reviews-Still.png');
width:130px;
height:92px;
}
#li_reviews:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Reviews-Rollover.png');
}
#li_reviews:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Reviews-Click.png');
}
#li_news {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/News-Still.png');
width:130px;
height:92px;
}
#li_news:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/News-Rollover.png');
}
#li_news:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/News-Click.png');
}
#li_tipstricks {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/tipstricks-still.png');
width:130px;
height:92px;
}
#li_tipstricks:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/tipstricks-rollover.png');
}
#li_tipstricks:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/tipstricks-click.png');
}
</style>
啊,无法正确格式化......
I'd like to fade my first background-image into one that is supposed to be used on hover and then off again once the user removes their mouse. Can use jQuery.
Here is what I have so far:
<ul style="top: -70px; display: block; padding-left: 205px;" id="cats-menu" class="nav superfish sf-js-enabled">
<a href="http://www.ballpointtech.com/category/guides/"></a><li id="li_guides" onclick="window.location = 'http://www.ballpointtech.com/category/guides/';"><a href="http://www.ballpointtech.com/category/guides/"> </a></li>
<a href="http://www.ballpointtech.com/category/news/"></a><li id="li_news" onclick="window.location = 'http://www.ballpointtech.com/category/news/';"><a href="http://www.ballpointtech.com/category/news/"> </a></li>
<a href="http://www.ballpointtech.com/category/reviews/"></a><li id="li_reviews" onclick="window.location = 'http://www.ballpointtech.com/category/reviews/';"><a href="http://www.ballpointtech.com/category/reviews/"> </a></li>
<a href="http://www.ballpointtech.com/category/tipstricks/"></a><li id="li_tipstricks" onclick="window.location = 'http://www.ballpointtech.com/category/tipstricks/';"><a href="http://www.ballpointtech.com/category/tipstricks/"> </a></li>
</ul>
<style type="text/css">
#li_guides {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Guides-Still1.png');
width:130px;
height:92px;
}
#li_guides:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Guides-Rollover1.png');
}
#li_guides:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Guides-Click2.png');
}
#li_reviews {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Reviews-Still.png');
width:130px;
height:92px;
}
#li_reviews:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Reviews-Rollover.png');
}
#li_reviews:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/Reviews-Click.png');
}
#li_news {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/News-Still.png');
width:130px;
height:92px;
}
#li_news:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/News-Rollover.png');
}
#li_news:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/News-Click.png');
}
#li_tipstricks {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/tipstricks-still.png');
width:130px;
height:92px;
}
#li_tipstricks:hover {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/tipstricks-rollover.png');
}
#li_tipstricks:active {
background-image:url('http://www.ballpointtech.com/wp-content/uploads/2010/09/tipstricks-click.png');
}
</style>
Argh, can't get the formatting right...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
@hunter
这是忽略了褪色的愿望。
这或多或少地展示了大局。未经测试或验证。如果你尝试一下并将其放在 jfiddle 上,我会帮助你完成它。您还需要创建一个
.mouseleave()
函数@hunter
this is ignoring the desire to fade.
this more or less gives the big picture. not tested or proofed. if you give this a shot and put it on jfiddle i will help you through it. you also need to make a
.mouseleave()
function这是我在 jsbin 中整理的一个好的开始。我只连接了新闻图标作为演示。它并不是万无一失的,因为在转换完成之前离开元素会使元素处于错误的状态,但我不知道如何立即解决这个问题。对于这项工作,jquery 可能有比
fadeOut/fadeIn
更好的方法。此外,您还需要将:active
背景设置为!重要的是,单击时图像始终可见,但我在保存之前忘记了这样做。
另外,您不能将
元素挂在
元素之外。创建链接
display:block
,这样它们就会占据列表项内的空白空间,然后您就可以废弃这个 hackyonclick="window.location..."
了。Here's a good start I put together in jsbin. I wired up just the news icon as a demo. It's not bulletproof as leaving the element before the transition completes will leave the element in the wrong state but I don't know how to address that offhand. jquery might have better methods than
fadeOut/fadeIn
for this job. Also you'll want to make the:active
background! important
so that image is always visible when clicking, which I forgot to do before saving.also you can't have
<a>
elements hanging around outside of the<li>
elements. make linksdisplay:block
so they take up the empty space inside the list item and then you can junk the hackyonclick="window.location..."
.