【发布时间】:2011-05-31 08:30:17
【问题描述】:
我试图了解最简单的背景转换可能仅 HTML5和CSS3 >。通过 stackoverflow 搜索,我了解到它可以使用外部库(如 jQuery)轻松实现,但对于这个项目,我决定不依赖其中任何一个。
标记
<nav>
<ul>
<li><a id="foobar" href="http://www.google.com/search?q=foobar">Foobar</a></li>
</ul>
</nav>
样式
body {
background: url('background-default.png'), no-repeat;
}
#foobar a:hover {
background: url('background-hover.png'), no-repeat;
-webkit-transition: // TODO;
-moz-transition: // TODO;
-o-transition: // TODO;
-ms-transition: // TODO;
transition: // TODO;
}
【问题讨论】:
-
改用 CSS Sprite 并更改悬停时的背景位置值以获得过渡效果。
-
@SalmanPK:非常感谢您的评论!我考虑过 CSS Sprites 但这不会在图像之间做任何 transition(淡入/淡出),对吗?无论如何,您介意提供一些关于您建议的方法的代码示例吗?
-
您可以对背景图像执行的唯一转换是更改位置和其他数字属性,您不能让它们相互淡入。
-
@robertc:感谢您的贡献。您介意发布此评论作为答案,以便我最终接受吗?
标签: html css stylesheet markup transitions