我期待在circle
svg元素上創建簡單的脈動動畫。我使用的是動畫transform: scale(..,..)
,但由於某種原因,它將整個圓圈移動到其容器中,而不是簡單地縮放元素本身。我的<circle>在哪裏?
這裏的動畫:
animation: pulsate 2s infinite linear;
@keyframes pulsate {
0% {transform: scale(0.1, 0.1); opacity: 0.0;}
50% {opacity: 1.0;}
100% {transform: scale(1.2, 1.2); opacity: 0.0;}
}
而這裏的一個例子(包括應用到div
產生所期望的結果相同的動畫):
http://codepen.io/anon/pen/jWqVyb
關於如何創建任何想法這種影響?該圓圈可能位於svg
內的任何位置,因此需要保持此位置。
偉大的信息,我不知道轉換的起源是特別爲svg – aw04
@ aw04是的,我不完全確定*爲什麼*。每個其他元素的默認值是'50%50%0'。 –
SVG規範(它是在CSS之前定義的)沒有變換原點的概念,縮放定義爲縮放整個座標系統,這是一個非常簡單的矩陣。將CSS和SVG融合在一起對標準人來說是一項艱鉅的任務。 –