我一直试图这么做几个小时,但到目前为止我还没有取得任何进展。
我的网站中有一些动画,有些会在点击时激活,有些会在悬停时激活。与此网站中的动画类似的东西:http://www.pixelwrapped.com/猫尾巴具有反应性,就像你缩放它同时随之缩放的broswer一样。
这是我用来创建动画的代码
.monster {
position: absolute;
width: 100px;
height: 100px;
margin: 2% auto;
background: url('img/le-cloud.png') left center;
overflow: auto;
display: block;
left: 20%;
top: 40%;
}
.monster:hover {
position: absolute;
width: 100px;
height: 100px;
margin: 2% auto;
background: url('img/le-cloud.png') left center;
animation: play .9s steps(18);
overflow: auto;
display: block;
left: 20%;
top: 40%;
}
我找到了使用百分比的this教程,在这个例子中用于更改1帧而不是播放整个18帧,我有其他动画由超过30个精灵组成,我查看了spritely.js但它没有响应。
任何想法我如何解决这个问题?
答案 0 :(得分:2)
我终于想出了如何做到这一点!万一有人还在乎,让我做一些解释,这样你就不会经历我的经历:
<style>
div.sprite {
margin: 0 auto;
width: 40%;
/* Change this to what ever value you desire*/
height: 0;
padding-bottom: 40%;
background-image: url("le-cloud-copy.png");
/* Add the sprite sheet here, must be on a staright line*/
background-position: 0 0;
background-size: 1800%;
/* I have 18 sprites in the sheet thus it's 1800%, if it was 4 you'd use 400% and so on*/
display: block;
}
div.sprite:hover {
/* background-position: 500% 0;*/
animation: play .9s steps(18);
/* 18 steps to go over al the sprites i have, if you had 4 in the sprite the value would be 4 for example */
}
@keyframes play {
100% {
background-position: 1800% 0;
}
}
</style>
神奇的位是here包括这个库,这应该有效。
<script src="js/prefixfree.min.js"></script>