所以我正在尝试制作带有SVG图标的CSS3动画,其中针在速度上旋转,同时在中心保持一个固定点。
在这种情况下,我试图从右到左进行动画(好像速度表要零),但似乎做不到。我接近以下内容:
<g>
<path fill="#C6A3A3" id="arrow" d="M26.323,23.042c-0.256,0-0.513-0.098-0.707-0.293c-0.392-0.391-0.392-1.023,0-1.414l9.899-9.899
c0.391-0.391,1.022-0.391,1.414,0c0.391,0.391,0.391,1.023,0,1.414l-9.899,9.899C26.834,22.944,26.578,23.042,26.323,23.042z"/>
</g>
(SVG还有更多内容,但这是相关内容)
SCSS文件:
@keyframes speedo {
from {
transform: rotate(0deg);
}
to {
transform: rotate(-120deg);
}
}
#arrow {
fill: rgb(66, 169, 97);
animation: speedo 2s ease infinite;
transform-origin: 30px 20px 10px;
}
由此,我只得到这个:
它围绕自己的中心旋转,而不是速度本身的中心。我看到人们围绕<g>
元素进行变换,但我不确定如何应用它们。此外,transform-origin: bottom left
没有帮助。我仍然试图掌握CSS变换/动画,特别是当它们与SVG有关时,所以任何帮助都会受到赞赏。
答案 0 :(得分:1)
transform-origin:center bottom;
如果针图像是直的,则将起作用。看起来问题是针图像是成角度的。让CSS创建角度。
答案 1 :(得分:0)