我正在尝试使用专门用于动画和布局的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