2015-11-07 221 views
1

現在我有工作但它擔心我,因爲我不認爲它應該。JQuery:隱藏然後顯示

CSS:

#logo { 
    display:none; 
} 

JQuery的:

$("#logo").delay(800).fadeIn(800); 

這樣的設置工作,但與jQuery露出徽標時,不應JQuery的改變CSS? JQuery fadeIn命令是否自動將display:none更改爲display:inline/initial/block/等?

+4

閱讀http://api.jquery.com/fadein/。 「.fadeIn()方法動畫匹配元素的不透明度。」 – j08691

+1

這不是與這個問題相關的部分(我沒有看到它直接在那裏說明) - 確實衰落設置了初始顯示屬性。或者相反,它增加了'display:none',這與僅僅改變不透明度有着重要的不同,因爲它將元素從文檔流中取出。 – Shikkediel

+0

是的,JQuery改變了CSS。如果您使用inspect元素來查看有問題的元素,您會看到它修改了內聯樣式 –

回答

1

是的jQuery分配一個內聯顯示:阻止元素並顯示:使用fadeIn,fadeOut和misc幻燈片函數時內聯到內聯元素。這就是它工作的原因。