2014-04-13 13 views
12

Chcę przenieść grupę elementów svg za pomocą tagu G, ale nie działa ona w IE, nawet w najnowszej wersji. Działa we wszystkich innych przeglądarkach. Proszę pomóż.Tłumaczenie CSS nie działa w IE11 na SVG g

Czy muszę użyć innego sposobu przenoszenia grupy elementów w svg?

http://jsfiddle.net/ahKpq/3/

<svg viewbox="0 0 20 20"> 
    <g> 
     <circle cx=10 cy=10 r=10 /> 
    </g> 
</svg> 

g { 
    transform: translate(10px, 0px); 
    -ms-transform: translate(10px, 0px); 
    -sand-transform: translate(10px, 0px); 
    -webkit-transform: translate(10px, 0px); 
} 
+0

http: //caniuse.com/#feat=transforms3d mówi, że jest częściowo supportrd .. – Jatin

Odpowiedz

21

IE11 obsługuje transformacji atrybut mimo że nie robi rozpoznaje styl CSS.

więc można po prostu ustawić atrybut, aby dopasować styl za pomocą JavaScript:

var g= document.querySelector('g'), 
    transform= getComputedStyle(g).getPropertyValue('transform'); 

g.setAttribute('transform', transform); 

Fiddle

+1

No dobra, że ​​faktycznie konwertuje się na macierz i IE to lubi, dzięki – Curtis

+0

Czy jest jakiś inny sposób? – puppeteer701

+0

Nie jestem tego świadomy. –

4

jeśli ktoś jeszcze potrzebuje to z jQuery ten pracował dla mnie:

jQuery("g").each(function(){ 
     transform = jQuery(this).css('transform'); 
     console.log(transform); 
     jQuery(this).attr('transform',transform); 
    }); 
+0

Działa doskonale na IE11. – Garconis