SVG旋转路径

Rob*_*anu 8 css animation svg

我开始使用SVG,到目前为止一切都还好,但是当我尝试用CSS做一些动画时,结果并不是我所期望的.

我想像这个小提琴那样旋转一个装备.

下面是我用来旋转元素的CSS:

.gear {
    -webkit-animation: rotation 2s infinite linear;
    -moz-animation: rotation 2s infinite linear;
    -o-animation: rotation 2s infinite linear;
    animation: rotation 2s infinite linear;
}

@-webkit-keyframes rotation {
    from {-webkit-transform: rotate(0deg);}
    to   {-webkit-transform: rotate(359deg);}
}
@-moz-keyframes rotation {
    from {-moz-transform: rotate(0deg);}
    to   {-moz-transform: rotate(359deg);}
}
@-o-keyframes rotation {
    from {-o-transform: rotate(0deg);}
    to   {-o-transform: rotate(359deg);}
}
@keyframes rotation {
    from {transform: rotate(0deg);}
    to   {transform: rotate(359deg);}
}
Run Code Online (Sandbox Code Playgroud)

Jos*_*ier 8

设置transform-origin50% 50%使svg动画功能像img:

这里有更新的例子

.gear {
    transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
}
Run Code Online (Sandbox Code Playgroud)

值得注意的是,该transform-origin属性的默认/初始值是50% 50% 0.

  • 似乎现在已被打破:50%是从整个svg计算而不仅仅是此路径。有任何更新吗? (2认同)