2013-01-22 12 views

risposta

44

È possibile farlo utilizzando una trasformazione 3D CSS3.

#videoElement 
{ 
    transform: rotateY(180deg); 
    -webkit-transform:rotateY(180deg); /* Safari and Chrome */ 
    -moz-transform:rotateY(180deg); /* Firefox */ 
} 

Ciò ruotarlo di 180 gradi attorno al suo asse Y (in modo che stai ora guardando da dietro) che dà lo stesso aspetto in fase di mirroring.

Esempio in http://jsfiddle.net/DuT9U/1/

+4

rotazione di un oggetto è diverso mirroring ! – Veger

+3

@Veger - se lo ruotate di 180 gradi, lo avete ruotato a metà giro, il che significa che lo guardate da dietro. Questo dà lo stesso aspetto di essere rispecchiato. Puoi ruotare X (180 gradi) per dare l'impressione di essere specchiato dall'alto verso il basso. Provalo tu stesso e vedi – PhonicUK

+1

No ... Il capovolgimento è come guardare in uno specchio, tutte le coordinate x (o y) vengono scambiate. Ruotandolo applica una formula più complessa a tutte le coordinate. Nota: il capovolgimento orizzontale * e * in verticale è uguale alla rotazione di 180 gradi. (Ma questa è 'coincidenza'), vedere [questa pagina] (http://www.cs.nott.ac.uk/~smx/IVIPracticals/exercise1.html) per un confronto grafico. – Veger

7

È possibile utilizzare CSS3 scaleX o scaleY impostati a -1 capovolgere rispettivamente il video orizzontalmente o verticalmente.

4

Utilizzando JavaScript, se video è l'elemento video, a specchio (capovolgere orizzontalmente) è possibile utilizzare

video.style.cssText = "-moz-transform: scale(-1, 1); \ 
-webkit-transform: scale(-1, 1); -o-transform: scale(-1, 1); \ 
transform: scale(-1, 1); filter: FlipH;"; 

Per capovolgere verticalmente è possibile utilizzare

video.style.cssText = "-moz-transform: scale(1, -1); \ 
-webkit-transform: scale(1, -1); -o-transform: scale(1, -1); \ 
transform: scale(1, -1); filter: FlipV;"; 
+0

Interessante, il flip infligge una penalizzazione delle prestazioni per i video? –

+0

@MichaelIvanov Nella mia esperienza non ho mai notato penalita 'prestazionali –

Problemi correlati