2010-05-08 36 views
2

我目前正在創建一個簡單的菜單,其中有幾個服務名稱,用戶可以點擊一個和jQuery將顯示它的相應段落下面描述它。我的jQuery代碼很好,並且完全符合我的要求,但是,我還有一個缺陷尚未解決。slideDown()使所有的東西在包裝轉變

每當我點擊其中一個標題,它的描述顯示,頁面的包裝中的所有內容都會左移到Firefox的左右7像素左右,但它同樣是谷歌瀏覽器,但我沒有測量過,但我我相信這是無關緊要的。

無論如何,我正在使用slideToggle()命令來顯示隱藏的parragraph。我認爲這是發生,因爲當slideDown發生時,它以某種方式改變了一切的寬度和「邊距:0自動;」在我的CSS中設置包裝規則是爲了補償這種變化。有沒有人有辦法解決這個問題?我已經嘗試了幾次在互聯網上發現的其他修復程序,但無濟於事。

下面是我的代碼的樣子,我把它放在jsFiddle上以便於查看:http://jsfiddle.net/vcH7m/如果您願意,可隨意在其中編輯它,或發佈需要在此修復的內容。不管什麼都更方便。非常感謝你的幫助!

+0

+1提供測試頁。奇怪的是我似乎無法複製移位(Mac上的Chrome)。 – karim79 2010-05-08 22:26:25

+0

我無法複製。 Linux上的Firefox 3.6 – 2010-05-08 22:39:54

+0

Windows 7上的Fx 3.6.3中沒有出現任何移動。 – edwin 2010-05-08 22:52:21

回答

1

這種轉移可能是由垂直滾動條引起的。如果頁面變得太大,那麼垂直滾動條會顯示出來,並將該段落的寬度向左多一點。當您將瀏覽器視口縮小到大約1000x600時,您可以在給定的jsfiddle頁面的第一段中看到這一點。

要解決這個問題,您可以考慮放置一個固定的垂直滾動條。

html { 
    overflow-y: scroll; 
} 
+0

非常感謝!這完全解決了這個問題。一切都按照我的意圖行事。我知道這將是一個簡單的解決方法,我只是不知道它是什麼。非常感激! – 2010-05-09 15:30:01

+0

不客氣。 – BalusC 2010-05-09 16:05:45