2013-05-03 46 views
0

如何在按钮上添加一个类似progressbar的动画?css backgorund位置动画无限

loading类添加到该按钮的背景位置应该向右移动一个无限循环。像一个进度条装载

这里的问题是,在不同的节奏

的位置移动

代码

<button class="loading">Loooong text on button</button><br><br> 
<button class="loading">Short</button> 

@keyframes animation_loading { 
    from { background-position: 0 0; } 
    to { background-position: 25px 0; } 
} 

button.loading { 
    background-image:url(//www.dynaccount.com/tmp.png); 
    animation:animation_loading 0.5s linear infinite; 
} 

小提琴

http://jsfiddle.net/KP2W4/

+0

能否请您做一个小提琴。您也可以使用progress元素。 – Mircea 2013-05-03 10:54:06

回答

2

你只需要一个关键帧动画移动该背景图像上的x轴是这样的:

@keyframes loading{ 
    0% { 
     background-position: 0 0; 
    } 
    100% { 
     background-position: -100% 0; 
    } 
} 

jsFiddle

+0

你应该尝试添加一般属性,并使用专有标签,因为你的回答是正确的,但小提琴在Firefox中失败,修复,我会upvote你:) – 2013-05-03 11:30:46

+0

已更新我quesion ..这里的问题是,速度是不同的对不同宽度的元素 – clarkk 2013-05-03 11:34:43

+0

找到了一个解决方案..谢谢..只是把图像宽度,而不是100% – clarkk 2013-05-03 11:38:16