首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SVG动画组合@keyframe

SVG动画组合@keyframe
EN

Stack Overflow用户
提问于 2016-11-25 19:25:11
回答 1查看 159关注 0票数 0

我正在创建一个路由器的SVG动画。

这不是很令人兴奋,但我有以下问题。

路由器的每一端都有不同的颜色。每一方都有自己的类。

目前,我的颜色填充如下所示:

代码语言:javascript
复制
@keyframes router_base 
{   
    0% {
        fill: #85d1d3;
    }   
    50% {
        fill: #85d1d3;  
        stroke-dashoffset: 0;
    }   
    100% {
        fill: black;
        stroke-dashoffset: 0;
    } 
 }

这告诉router_base,在给定的时间中,它50%的时间保持#85d1d3,最后50%变为黑色。

每一面都有它自己的颜色,所以在这个例子中,我应该为每种颜色创建一个@keyframe

这看起来可以做得更聪明……

这里是整个事情的一个小提琴。https://jsfiddle.net/yzzubxgf/

EN

回答 1

Stack Overflow用户

发布于 2016-11-25 22:21:19

如果使用sass,你可以创建一个mixin来为不同的动画生成代码,如下所示:

代码语言:javascript
复制
@mixin createKeyFrames($animationName, $color1, $color2 : black) {
  @keyframes #{$animationName}
  {   
      0% {
          fill: $color1;
      }   
      50% {
          fill: $color1;  
          stroke-dashoffset: 0;
      }   
      100% {
          fill: $color2;
          stroke-dashoffset: 0;
      } 
   }
}

然后把它叫做

代码语言:javascript
复制
@include createKeyFrames(router_base, #85d1d3);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40803944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档