2015-03-02 13 views
6

ho il seguente mixin per cross-browser trasformare:C'è polyfill per i CSS trasformare proprietà in IE8

.transform (...) { 
    -webkit-transform: @arguments; /* Chrome, Opera 15+, Safari 3.1+ */ 
     -moz-transform: @arguments; /* Firefox 3.5+ */ 
     -ms-transform: @arguments; /* IE 9 */ 
     -o-transform: @arguments; /* Opera 10.5+ */ 
      transform: @arguments; /* Firefox 16+, IE 10+, Opera */ 
} 

.translate(@x:0, @y:0) { 
    .transform(translate(@x, @y)); 
} 

e applicarlo qualcosa di simile al seguente:

#main { 
    .translate(280px, 0); 
} 

ma non è wotk in IE8 and Opera mini. C'è qualche ripiego, polyfill o altro per supportarlo in questi browser?

+0

controllare questo http://www.useragentman.com/IETransformsTranslator/ – Nooh

+1

Per IE6 + c'è 'filter: progid: DXImageTransform.Microsoft.Matrix' che può simulare molti effetti di trasformazione css3. – pawel

risposta

9

ci sono alcune è possibile utilizzare, quelle suggerite da modenizer sono:

css sandpaper e transformie.

Direi comunque che aggiungere pollyfill al browser precedente come ie8 danneggia le prestazioni di un browser già passato e riduce l'esperienza dell'utente. Inoltre, se si aggiungono i pollyfill ai browser mobili si aggiungono ai tempi di caricamento che in una connessione 3g potrebbero mettere fuori uso gli utenti.

+4

È possibile rilevare se il browser è IE8 e caricare il polyfill solo in quel caso. La tua argomentazione per le reti mobili 3G è discutibile. – user2867288

+0

in seguito a questa risposta, sono andato con la carta vetrata css e ho avuto un'eccezionale volta per il debug di 400 richieste errate - si scopre che la seguente riga 'req.setRequestHeader (" If-Modified-Since "," Sat, 1 Jan 2000 00:00 : 00 GMT ");' deve essere 'req.setRequestHeader (" If-Modified-Since "," Sat, 01 Gen 2000 00:00:00 GMT ");' - allora funziona! –

Problemi correlati