2012-04-12 17 views
5

) Ho un'immagine stellare in alto a sinistra del mio schermo che vuole ruotare continuamente. così qualcuno può dirmi come possiamo fare una rotazione dell'immagine in modo continuo per i browser Mozilla Firefox, Google Chrome !? [Css tipo di posizione è 'Assolutamente' e la risoluzione delle immagini: 25 * 25]Come ruotare un'immagine in modo continuo?

+4

Come è piccolo perché non fare una gif animata ? – cosmorogers

+0

questo è ovviamente un preloader. non c'è bisogno di javascript e codice aggiuntivi e tempi di caricamento per qualcosa che sarebbe 1kb in più come GIF, in particolare jQuery – rickyduck

+0

CarrieKendall: jquerycss e non funziona su Google Chrome Browser!: O cosmorogers: hai ragione;) i ho intenzione di provarlo per questo e ci sono alcune altre immagini quindi anche io avevo bisogno di un codice per loro!: O tnx 4 ottima idea ;;) rickyduck: buona idea!: -!: - /;) – Alireza29675

risposta

10
@-webkit-keyframes rotate { 
    from { 
    -webkit-transform: rotate(0deg); 
    } 
    to { 
    -webkit-transform: rotate(360deg); 
    } 
} 

img.star 
{ 
    -webkit-animation-name:    rotate; 
    -webkit-animation-duration:   0.5s; 
    -webkit-animation-iteration-count: infinite; 
    -webkit-animation-timing-function: linear; 
} 

Aggiungi -moz-transform/animation, -ms-transform/animation, ecc regole per supportare altri browser.

Si potrebbe anche creare un GIF animato :).

5

che si può fare con i CSS: (utilizzando il vostro core GPU):

img{ 
 
    transform-origin:50% 50%; 
 
    animation:2s rotateRight infinite linear; 
 
} 
 

 
@keyframes rotateRight{ 
 
    100%{ transform:rotate(360deg); } 
 
}
<img src="https://ih0.redbubble.net/image.364229144.1663/flat,200x200,075,t.jpg"> 
 

 

 

+0

eccetto per i browser più vecchi che presumo abbiano il targeting – rickyduck

+0

ha esplicitamente detto che NON li bersaglia. – vsync

+0

No, ha detto per "Mozilla Firefox, Google Chrome", FF in particolare con versioni 3.1 e seguenti il ​​supporto per la transizione css era minimo e inesistente (tenete a mente che ff 3.1 non ha un aggiornamento automatico e molte persone lo usano ancora) – rickyduck

3

È possibile utilizzare RaphaelJS, poiché è compatibile con browser diversi. Ad esempio, questo codice dovrebbe funzionare:

<div id="paper" style="width:300px; height:200px"></div>

<script type="text/javascript" src="(link to downloaded copy of raphaeljs)"></script>

<script type="text/javascript"> 
var paper = Raphael("paper"); 
var good_cat = paper.image("http://pp19dd.com/_old/lily.png",40,20,96, 145); 
var evil_cat = paper.image("http://pp19dd.com/_old/cookie.png",160,20,96, 145); 
var angle = 0; 

setInterval(function() { 
    angle += 45;  
    good_cat.stop().animate({ "transform": "R" + angle }, 300, "<>"); 
}, 500); 


setInterval(function() { 
    r = parseInt(Math.random() * 359); 
    evil_cat.stop().animate({ "transform": "R" + r }, 300, "<>"); 
}, 1000); 
</script> 

Vedi http://jsfiddle.net/AJgrU/ per un esempio.

+0

+1 per Raphael.js una grande libreria js per la manipolazione di immagini e svg – rickyduck

+0

+1 dovrebbe essere stato assegnato per i gatti, non per funzionalità. ;) Grazie. – pp19dd

3

un esempio di lavoro jsFiddle con animazioni CSS3 e trasforma: http://jsfiddle.net/GcjKZ/1/ http://jsfiddle.net/GcjKZ/3/

img { position: absolute; width: 25px; height: 25px; 
    -moz-animation: 3s rotate infinite linear ; 
    -moz-transform-origin: 50% 50%; 
    -webkit-animation: 3s rotate infinite linear ; 
    -webkit-transform-origin: 50% 50%; 
} 

@-moz-keyframes rotate { 
    0 { -moz-transform: rotate(0); } 
    100% { -moz-transform: rotate(360deg); } 
} 

@-webkit-keyframes rotate { 
    0% { -webkit-transform: rotate(0); } 
    100% { -webkit-transform: rotate(360deg); } 
} 

(mi dispiace, la mia stella non è molto ben centrato)

+0

Ecco uno con una stella centrata :) ma la rotazione non funziona? http://jsfiddle.net/GcjKZ/2/ – rickyduck

+0

Non intendevo "centrato" sulla finestra. Stavo parlando del centro della figura rispetto alla sua forma. Il tuo violino funziona per me – fcalderan

+0

Il mio male, comunque sto usando il chrome 18.0.1025.152 m, funziona perfettamente in ff anche se – rickyduck