2012-02-22 12 views
17

Vurguluyken boyutu değiştiren bir kutum var. Bununla birlikte, mouseout aşamasını geciktirmek istiyorum, böylece kutu eski boyutu geri almadan önce yeni boyutu birkaç saniye korur.CSS3 geçişleri ile mouseout/hover gecikmesi

div { 
    width: 70px; 
    -webkit-transition: .5s all;  
} 

div:hover { 
    width:130px; 
} 

Bu, Javascript OLMADAN ve yalnızca CSS3 yapmak mümkün mü? Sadece webkit'u desteklemem gerekiyor.

+0

css3 animation property? animasyon özelliği ile bazı şeyleri denedim, ama ne istediğinizi emin değilim. ama istersen sana verebilirim. – Shabib

cevap

37
div { 
    width: 70px; 
    -webkit-transition: .5s all; 
    -webkit-transition-delay: 5s; 
    -moz-transition: .5s all; 
    -moz-transition-delay: 5s; 
    -ms-transition: .5s all; 
    -ms-transition-delay: 5s; 
    -o-transition: .5s all; 
    -o-transition-delay: 5s; 
    transition: .5s all; 
    transition-delay: 5s; 
} 

div:hover { 
    width:130px; 
    -webkit-transition-delay: 0s; 
    -moz-transition-delay: 0s; 
    -ms-transition-delay: 0s; 
    -o-transition-delay: 0s; 
    transition-delay: 0s; 
} 

Bu, mouseover durumunu hemen tetikleyecek, ancak mouseout tetiklenene kadar 5 saniye bekleyecektir.

Fiddle

+1

web dışı önekleri de eklemek üzere düzenlenmiştir - sadece "div" etiket tanımında –

+0

numaralı iyi uygulama, "geçiş:" ve "geçiş gecikmesi" nin aslında bir kopyası mı? Geçiş şartnamesinin ilk değeri gecikme değeridir, hayır? – Screenack

+1

@Screenack Hayır, ilk değer geçişin süresidir - ne zaman giderse tamamlanması ne kadar sürer. – Sandwich

6

geçiş

transition: .5s all 5s 

olarak bildirilebilir daha sonra ayrı bir geçiş gecikme gerek yoktur (kısaltma, birinci sayı süresi, ikinci sayı gecikme)

Üzgünüz, yeterince işaret olmadığındanma yorum yapamazsınız