2011-07-16 26 views

cevap

14

, bu aldığım en iyisi:

$(div).css({ 
     opacity: 0, 
     display: 'inline-block'  
    }).animate({opacity:1},600); 
+0

sağlamak için ilgili bir link var Benim günümü kurtar –

+0

Sadece harika bir adam .. Teşekkürler – Novasol

17

css() kullanıyor musunuz?

$("div").fadeIn().css("display","inline-block"); 
+4

Bunu denemedim, ama gibi o biraz etrafında atlamak için eleman neden olabilir his var Animasyon sırasında 'display: block' olarak değiştirildi ve ardından animasyon bittikten sonra 'display: inline-block' olarak gösterildi. Yani işe yarayacağını düşünmüyorum. Yine de denemeye değer olabilir, bu yüzden +1 yine de. – Spudley

+0

@Spudley Aynı zamanda "position: inline-block" yerine "position: inline" ile de çalıştığını düşündüm ve bunu "display: block" olarak gösterip göstermediğini görmek için kullandım. http://jsfiddle.net/6DcY9/ Tabii ki diğer koda bağlı olarak bu olabilir – Sotiris

+0

Ben bir fadeIn ("hızlı") yapıyorum css ({'display': 'inline-blok'}) 've Benim düzenimin etrafta dolaşmasına neden olmaz. FadeIn bitmeden önce görüntü özelliğini ayarlar. Ek olarak, IE7 satır içi bloğu nasıl yorumlayacağını bilmediğinden, 'html' nin' ie7' bir sınıfına sahip olup olmadığını kontrol ettikten sonra .css ({'display': 'inline', 'zoom': ') ayarını kontrol ediyorum. 1 '}) 'yerine. – Jazzerus

6

Ben inline-block öğesinin içinde fazladan eleman katmanı koyarak ve bunun yerine o solmaya öneririm.

<div style='display:inline-block;'> 
    <div id='fadmein'>....</div> 
</div> 

$('#fademein').fadeIn(); 

Bunun fazladan işaretleme olduğunu biliyorum, ancak sorun için muhtemelen en pratik çözümdür.

Alternatif, fadeIn() kullanmak yerine, opaklığı değiştirmek için JQuery'nin animate() yöntemini kullanmak olacaktır. Bu sadece opacity özelliğini değiştirir; display özelliğine dokunulmaz.

+0

İçeriği nasıl kurduğunuza bağlı olarak, bu En iyi görünen çözüm olmasa da, bu muhtemelen uygulanması en kolay ve şaşırtıcı derecede iyi çalışıyor. Çok teşekkürler! – shmeeps

1

jQuery Forumlarında, this question'a göre önerilen çözüm, '' theplayplay 'özelliğini block olarak değiştirmek ve onu kaydırmaktır.

Yukarıda okuduklarını bir kombinasyonu itibaren
+5

hayır. Eğer 'inline-block' kullanıyorsanız, yüzmekten kaçınmaya çalıştığınız içindir. – Spudley

+0

Katılıyorum. Ama bence – Simeon