Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用css设置精灵表的动画_Javascript_Css_Html - Fatal编程技术网

Javascript 使用css设置精灵表的动画

Javascript 使用css设置精灵表的动画,javascript,css,html,Javascript,Css,Html,我无法使用css设置精灵表的动画 我看到的每个示例都包含一个只有一行精灵或一列精灵的精灵表 像这样: 他们使用关键帧设置动画 @keyframes play { 100% { background-position: -1900px; } } 但对我来说,spritesheet是一个10x8的网格 对于这个特殊的精灵表,他们是否需要使用css来实现动画?或者我应该使用HTML5画布 每帧为90x96像素 这是我的形象 我建议的最简单、最简单的方法是拍摄纹理打包器生成的图像,然后将每一行复制粘贴

我无法使用css设置精灵表的动画 我看到的每个示例都包含一个只有一行精灵或一列精灵的精灵表 像这样:

他们使用
关键帧设置动画

@keyframes play {
100% { background-position: -1900px; }
}
但对我来说,spritesheet是一个10x8的网格

对于这个特殊的精灵表,他们是否需要使用css来实现动画?或者我应该使用HTML5画布

每帧为90x96像素

这是我的形象

我建议的最简单、最简单的方法是拍摄纹理打包器生成的图像,然后将每一行复制粘贴到一个长行中,这样就有了一条长行。将其另存为新文件以供使用。更类似于开头的1行/1列示例

如果可能的话,我还建议在每个fuzzball之间添加更多的填充/空间(我能想到的最好的描述)。否则,在边缘没有出血的情况下瞄准每个帧可能会很困难。例如第9行第9列,模糊球手臂几乎接触。

我建议的最简单、最简单的亲吻(保持超级简单)方法是拍摄纹理打包器生成的图像,将每一行复制并粘贴到一个长行中,这样就有了一条长行。将其另存为新文件以供使用。更类似于开头的1行/1列示例


如果可能的话,我还建议在每个fuzzball之间添加更多的填充/空间(我能想到的最好的描述)。否则,在边缘没有出血的情况下瞄准每个帧可能会很困难。例如第9行第9列,模糊球手臂几乎接触。

在栅格精灵上处理动画的方法是使用2个动画。 一个用于水平,一个用于垂直

我的答案是基于这个答案:

在栅格精灵上处理动画的方法是使用2个动画。 一个用于水平,一个用于垂直

我的答案是基于这个答案:

当然有办法,但计算每个位置可能比将它们放在一行或一列上更复杂。此精灵表由纹理打包机完成,你对纹理打包机有什么想法吗?我可以把所有的精灵排成一行或一列吗?好的,应该有一个文件.plist来存储位置和其他选项,正如被接受的答案所暗示的,这是一个重复的:?当然有办法,但是,计算每个位置可能比将它们放在一行或一列上更复杂。此精灵表由纹理打包机完成,你对纹理打包机有什么想法吗?我可以把所有的精灵排成一行或一列吗?好的,应该有一个文件.plist来存储位置和其他选项,正如被接受的答案所暗示的,这是否是:?
.hi {
    width: 90px;
    height: 96px;
    background-image: url("http://i.stack.imgur.com/G7o8R.jpg");
    -webkit-animation: playv 6s steps(7) infinite, playh 1s steps(9) infinite; 

}


@-webkit-keyframes playv {
     0% { background-position-y:   0px; }
   100% { background-position-y: 100%; }
}

@-webkit-keyframes playh {
     0% { background-position-x:   0px; }
   100% { background-position-x: 100%; }
}