【问题标题】:Flexbox not wrapping flex itemsFlexbox 不包装弹性项目
【发布时间】:2013-02-02 02:45:57
【问题描述】:

我正在尝试使用 flexbox (inb4:我不关心 IE) 为我的网站设置布局,但由于某些原因,这些项目没有换行。

http://jsfiddle.net/EnUuA/

section { display:-webkit-flex; -webkit-flex-flow: row wrap; width: 200px; /* ... */ }
div { -webkit-flex: 1; width:48%; /* ... */ }

​ 我尝试在px 中设置宽度,并尝试完全删除宽度.. 仍然无法换行!

那么,我怎样才能让我的弹性盒环绕在它们的容器中?

请在回答之前确保您的回答确实使用了flexible box model,而不仅仅是给我块级元素。

【问题讨论】:

  • 肯定有display: -webkit-flex。如果我把它改成display: flexChrome doesn't understand it.
  • Safari display: -webkit-box; jsfiddle.net/EnUuA/4 但是看起来 wrap 属性有问题。
  • display: -webkit-box; 是弹性盒的旧实现。它已经被重做并通过使用display: -webkit-flex;css-tricks.com/old-flexbox-and-new-flexbox触发
  • 对,但是旧的实现仍然适用于 Safari 5 和 6。除非您使用 flexie polyfill 来启用 2009 Flexbox 模型,否则您仍然必须特别使用旧语法.这就是我想指出的。

标签: css


【解决方案1】:

似乎(截至今天)flex-flow 属性不在 Firefox 中(至少 CR 2012 版本)。

但是,您可以在 Opera/Chrome 中看到此小提琴中的包装。

Safari Nightly 也有它的功能 http://nightly.webkit.org

[edit]愚蠢的指南针忘记了前缀

参考文献:

https://developer.mozilla.org/en-US/docs/CSS/flex https://developer.mozilla.org/en-US/docs/CSS/Using_CSS_flexible_boxes

NB 从 FF 21.0a1 开始不支持 flex-wrap

至少您可以验证该属性是否有效:

http://jsfiddle.net/M7yLn/1/

【讨论】:

  • 感谢您的回答。您可以为您正在使用的 flex 属性提供一个参考链接吗?特别是flex: 0 0 auto?不过,我发现 iPad 不支持display: flex,而只支持display: box。我将改写我的问题,并在您提供参考后将您的问题标记为答案。再次感谢!
  • 我不确定是一年前还是一年后 - 但截至今天 iOS7 仍然不支持 display: flex 但确实支持 webkit 前缀的 css 选择器,例如。 display: -webkit-flex;-webkit-flex-direction: column
猜你喜欢
  • 2021-12-17
  • 2016-01-13
  • 1970-01-01
  • 1970-01-01
  • 2019-05-08
  • 2016-07-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-23
相关资源
最近更新 更多