因此,我尝试使用SVG图标制作CSS3动画,其中,指针在speedo上旋转,同时在中心保持固定点。
在这种情况下,我尝试从右到左制作动画(好像速度计将要归零),但似乎做得不好。我已经接近以下内容:
<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相关的CSS转换/动画,因此,我们将不胜感激。 最佳答案
transform-origin:center bottom;
如果针图像是笔直的,它将开始工作。看来问题在于针头图像是倾斜的。让CSS创建角度。