加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

CSS动画实现背景无缝无限循环的实现案例

发布时间:2023-09-01 14:33:08 所属栏目:语言 来源:
导读:这篇文章主要讲解了“CSS动画实现背景无缝无限循环的实现示例”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路
这篇文章主要讲解了“CSS动画实现背景无缝无限循环的实现示例”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。
 
1. 需求
 
一张图片从左向右无限循环移动
 
2. 代码
 
由于是应用在移动端,故使用rem单位,后面问题也发生在这。
 
HTML
 
<div class="dog"></div>
 
CSS
 
.dog {
 
    width: 5.4rem;                     \\图片宽度
 
    height: 3.04rem;                   \\图片高度
 
    background-image: url(head.jpg);
 
    background-size: 5.4rem 3.04rem;   \\图片宽高
 
    background-position: -5.4rem 0;
 
    animation: run 2s linear infinite;
 
}
 
@keyframes run {
 
    from {background-position: -5.4rem 0;}
 
    to {background-position: 0 0;}
 
}
 
3. 问题
 
在PC端,是没有问题的,但是在移动端(可能是重新计算字体大小导致的?)会发现移动速度与所设置的不一致,并且图片无法实现无缝。
 
4. 原因
 
未知,没找到相关资料,目测是动态计算font-size引起的问题。
 
5. 解决
 
经过测试发现若是在文件加载完毕后,给图片添加上动画则是正常。故修改代码:
 
JS
 
$(document).ready(function(){
 
  remReSize();
 
  setTimeout(function() {
 
    $('.dog').css('animation', 'run 2s linear infinite');
 
  }, 0);
 
});
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章