我正在嘗試使用專門用於動畫和佈局的CSS的水平手風琴的效果。因此,我設置了4列,與經典手風琴的主要區別在於,當我點擊某一列時,不是沿一個方向展開,而是沿兩個方向展開,並將其他列左右推。動畫浮動的div
這裏是我的代碼的壓縮版本現在:http://jsfiddle.net/4ZGmj/183/
如果您單擊紅色柱,它的工作原理完全像預期一樣:列在兩個方向展開,所有其他列都推到右邊。現在,如果您單擊綠色列,您會發現一些不同之處:該列按照預期的方向在兩個方向上展開,但只會將列向右推,而將列重疊到左側。我想爲每列在展開時推送所有相鄰的列。
我想這可能與我的列向左浮動的事實有關。你們對導致這種行爲的原因有什麼見解,以及我能做些什麼來解決這個問題?
在此先感謝
不太清楚如何解決它,但我認爲你在正確的軌道與浮法:左。如果您將其更改爲float:right,則行爲會發生顯着變化。 – jgibson 2012-08-06 21:11:07
@Stano,你是對的,消極的邊緣似乎是原因。只有當我刪除它時,div纔會在兩個方向上擴展,這是主要的預期效果。此外,我實際上使用Firefox,但代碼旨在在iPad上運行,因此我必須爲Safari編碼,這就是爲什麼我使用-webkit- – DrunkenBeard 2012-08-06 21:25:24
@DrunkenBeard好吧,我只推薦Firefox,因爲它有很棒的Web開發工具。試圖做一些[修改](http://jsfiddle.net/4ZGmj/184/),它並不完美,也不像看起來那麼容易。 – Stano 2012-08-06 21:41:19