我使用flexbox创建了一个2列布局,顶部有一个div,跨越两列(我将其用于菜单布局)。以下小提琴展示了我是如何实现这一目标的。不幸的是,虽然它在Chrome / iOS 7中完美运行,但它似乎不适用于旧版本的Safari。 http://jsfiddle.net/Jtts9/
我不需要支持IE,但确实需要支持Android / iOS。这在Chrome和iOS7中正确显示,但是当我使用旧语法(例如display: -webkit-box;
)时,我无法复制这两列,因为旧语法中似乎不存在flex-flow: row wrap
。我看过一些对box-lines
的引用,但听起来不支持。
在使用旧的2009 flexbox语法时,我将如何实现相同的外观?
答案 0 :(得分:2)
我最后放弃了旧的flexbox语法,并使用了float和伪选择器。
与原始问题相比,这个小提示显示了解决方案。
我所做的是将float: left
应用于所有项目,然后使用以下内容:
.item2 :nth-child(2){
float: right;
}
将每个第二个元素浮动到右边。
此外,为了在存在奇数项目时复制flexbox的行为,我添加了以下规则:
.item2:last-child:not(:nth-child(odd)){
width: calc(100% - 2px);
}
如果存在奇数个框,则最后一个框会跨越整个宽度。