Szukam utworzyć prostą animację pulsującą na svg elementu circle
. Używam animacji transform: scale(..,..)
, ale z jakiegoś powodu przesuwa ona cały okrąg w obrębie swojego kontenera, a nie tylko skaluje sam element.Gdzie jest moja <circle>?
Oto animacja:
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;}
}
A oto przykład (w tym samym animacji stosowanej do div
która produkuje pożądanego rezultatu):
http://codepen.io/anon/pen/jWqVyb
Wszelkie pomysły na stworzenie ten efekt? Koło może być umieszczone w dowolnym miejscu w obrębie svg
i musi zachować tę pozycję.
Świetna informacja, nie miałem pojęcia, że transformacja - pochodzenie było wyjątkowe dla svg – aw04
@ aw04 Tak, nie jestem do końca pewny * dlaczego *. Wartością domyślną dla każdego innego elementu jest "50% 50% 0". –
Specyfikacja SVG (zdefiniowana przed wersją CSS) nie ma pojęcia pochodzenia transformacji, a skalowanie jest definiowane jako skalowanie całego układu współrzędnych, który jest bardzo prostą macierzą. Łączenie CSS i SVG razem jest trudnym zadaniem dla facetów z normami. –