You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

动画Div间出现抖动白线问题求助

解决无限滚动动画中图片间的抖动白线问题

针对你遇到的无限滚动波浪头部出现抖动白线的问题,给你几个实用的修复方案,可逐个尝试:

  • 消除内联块元素间隙
    即便设置了font-size:0,inline-block元素仍可能因HTML换行产生细微间隙。可以:

    • 把HTML中两个.imWrapper标签直接连写(去掉换行):
      <div class="imcontainer">
        <div class="imWrapper"><img src="https://i.imgur.com/gvpbX3j.png"></div><div class="imWrapper"><img src="https://i.imgur.com/gvpbX3j.png"></div>
      </div>
      
    • 给.imcontainer额外添加字符间距重置:
      .imcontainer{
        white-space: nowrap;
        margin:0px;
        font-size:0;
        letter-spacing: -1px;
        word-spacing: -1px;
      }
      
  • 强制图片边缘重叠
    利用微小负边距让两张图重叠1像素,直接覆盖可能出现的白线:

    .imWrapper img {
      margin-right: -1px;
      display: block; /* 去掉图片默认的行内元素间隙 */
    }
    

    或者调整动画结束位置,让位移超出100%一点:

    @keyframes slideAnim {
      from {
        transform: translateX(0%);
      }
      to {
        transform: translateX(-100.1%);
      }
    }
    
  • 触发GPU加速提升渲染稳定性
    用translate3d替代translateX,强制浏览器使用GPU渲染动画,减少像素偏移抖动:

    @keyframes slideAnim {
      from {
        transform: translate3d(0%, 0, 0);
      }
      to {
        transform: translate3d(-100%, 0, 0);
      }
    }
    
  • 匹配容器背景色
    如果白线是容器背景透出导致的,给.imcontainer设置和图片顶部一致的背景色:

    .imcontainer{
      /* 替换为你图片顶部的实际颜色值 */
      background-color: #87CEEB;
      white-space: nowrap;
      margin:0px;
      font-size:0;
    }
    
  • Gatsby StaticImage特殊处理
    针对StaticImage生成的容器,确保无额外间距:

    <StaticImage
      src="../your-wave-image.png"
      imgStyle={{ margin: 0, padding: 0, display: 'block' }}
      placeholder="none" /* 禁用占位图避免额外元素干扰 */
    />
    

内容的提问来源于stack exchange,提问作者Greta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 03:52:41