【问题标题】:scss function for animation keyframes动画关键帧的scss函数
【发布时间】:2018-01-03 04:36:42
【问题描述】:

我想做一个可重用的 sass 函数,让我可以轻松编写 @keyframes css 动画而无需编写太多代码,但我不知道如何去做,尤其是数学部分。

我有一个 div,其中包含一个带有此 css 的背景图像

height: 100vh;
width: 8000px;

此背景图片由 25 帧组成。所以每一帧都是 320px 宽。

动画应该translateX() div 每 4% 增加 320px 的倍数,所以是这样的:

@keyframes animation {
    0% {
        transform:translateX(0);
    }
    4% {
        transform:translateX(-320px);
    }
    8% {
        transform:translateX(-640px);
    }

    ...
}

我想为此创建一个函数,但我是 scss 函数的新手,我真的不知道从哪里开始。如果有人能给我一个提示,那就太好了!

谢谢

【问题讨论】:

  • 步数计时功能不能解决您的要求吗?

标签: css function sass css-animations


【解决方案1】:

可能会更好(模块化),但这是给你的;

@mixin deneme($i){
  @for $i from 0 through 100/$i {
    #{$i * 4}% {
      transform:translateX(#{-320 * $i});
    } 
  }
}

更新:

我觉得这个好一点。

@mixin deneme($increase, $angle){
  @for $x from 0 through 100/$increase {
    #{$x * $increase }% {
      transform:translateX($angle * $x);
    } 
  }
}

【讨论】:

猜你喜欢
  • 2016-01-17
  • 2020-01-27
  • 2013-09-24
  • 1970-01-01
  • 2012-12-22
  • 2017-05-30
  • 2021-03-21
  • 1970-01-01
相关资源
最近更新 更多