2015-05-08 62 views
6

Örneğin, en son iOS Safari tarayıcısını kullanarak bir div taşıyalım diye bir kod uyguladığım zaman, aslında iki kural kümesi arasında geçiş yapmıyor. Yüzde değerleri dışında kullanmak için değiştirmeyi denedim ama hala bu güne kadar, translate özelliğinin uygulandığı transition: transform;'u kullanırken hiçbir zaman çalışmaya başlayamadım.IOS Safari geçiş dönüşümü çalışmıyor

Doğru önekleri kullanıyorum ve destekledim ve sorun yaşamadan çalışıyorum.

http://caniuse.com/#search=transition

http://caniuse.com/#search=translate

JSFiddle

$('button').on('click', function() { 
 
    $('.mydiv').toggleClass('added-class'); 
 
});
.mydiv { 
 
    display: inline-block; 
 
    width: 100px; 
 
    height: 50px; 
 
    background-color: red; 
 

 
    -moz-transform: translateY(0); 
 
    -ms-transform: translateY(0); 
 
    -o-transform: translateY(0); 
 
    -webkit-transform: translateY(0); 
 
    transform: translateY(0); 
 
    -moz-transition: transform 0.6s ease-out; 
 
    -o-transition: transform 0.6s ease-out; 
 
    -webkit-transition: transform 0.6s ease-out; 
 
    transition: transform 0.6s ease-out; 
 
} 
 

 
.added-class { 
 
    -moz-transform: translateY(100%); 
 
    -ms-transform: translateY(100%); 
 
    -o-transform: translateY(100%); 
 
    -webkit-transform: translateY(100%); 
 
    transform: translateY(100%); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div class="mydiv"></div> 
 
<button type="button">Toggle class</button>

transition ve transform iOS Safari desteği sadece satıcıya öneki özellikleri ve değerleri

cevap

21

Eski sürümler, sana böylece yerine -webkit-transition: transform-webkit-transition: -webkit-transform kullanmalıdır:

JSFiddle

$('button').on('click', function() { 
 
    $('.mydiv').toggleClass('added-class'); 
 
});
.mydiv { 
 
    display: inline-block; 
 
    width: 100px; 
 
    height: 50px; 
 
    background-color: red; 
 

 
    -webkit-transform: translateY(0); 
 
    -moz-transform: translateY(0); 
 
    -ms-transform: translateY(0); 
 
    -o-transform: translateY(0); 
 
    transform: translateY(0); 
 

 
    -webkit-transition: -webkit-transform 0.6s ease-out; 
 
    -moz-transition: transform 0.6s ease-out; 
 
    -o-transition: transform 0.6s ease-out; 
 
    transition: transform 0.6s ease-out; 
 
} 
 

 
.added-class { 
 
    -webkit-transform: translateY(100%); 
 
    -moz-transform: translateY(100%); 
 
    -ms-transform: translateY(100%); 
 
    -o-transform: translateY(100%); 
 
    transform: translateY(100%); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div class="mydiv"></div> 
 
<button type="button">Toggle class</button>

+1

hile yapmak gibi görünüyor, size Sergey'i teşekkür ederim! Geçiş artık mükemmel çalışıyor (iPhone 6 iOS8'de test edildi). –