Flexiejs.com具有用于CSS弹性框的浏览器polyfill,但它基于该主题的早期草案,这与当前的W3C候选推荐CSS Flexible Box Layout Module不兼容。 CR中定义的柔性箱是否有任何填充物,至少是部分填充物?
答案 0 :(得分:14)
简而言之:在撰写本文时(2014年10月),没有实现W3C候选推荐标准的javascript polyfill。
有2个javascript polyfill实现:
Flexie.js
自2012年中期以来几乎没有任何更新 - see the contribution graph - 仅支持 2009 Flexbox模型,这意味着有限的财产。
Reflexie.js
在撰写本文时(2014年10月)仍未受到影响,正如Ilya Streltsyn
在另一个答案的评论"it's still 'Sooooo not ready for prime-time'" as the author stated on the main page of the project中所指出的那样。最新提交于2012年11月1日...
<强>资源强>
答案 1 :(得分:8)
目前还没有实现W3C候选推荐标准的polyfill。
flexie.js的作者前段时间曾提到他正在更新flexie.js,但从那时起就没有任何出版物。因此很难说它是否或何时会实际实现。
答案 2 :(得分:6)
Chris Coyier有一个很棒的资源:
http://css-tricks.com/using-flexbox/
问题是flexbox使用了三个草稿。 Chris Coyier的文章讨论了所有三个版本以及如何交叉它们以实现跨浏览器支持。我摘录了下面的相关内容。
display:flex
:
display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
display: -ms-flexbox; /* TWEENER - IE 10 */
display: -webkit-flex; /* NEW - Chrome */
display: flex;
flex:1
:
-webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
-moz-box-flex: 1; /* OLD - Firefox 19- */
width: 20%; /* For old syntax, otherwise collapses. */
-webkit-flex: 1; /* Chrome */
-ms-flex: 1; /* IE 10 */
flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
order:1
:
-webkit-box-ordinal-group: 1;
-moz-box-ordinal-group: 1;
-ms-flex-order: 1;
-webkit-order: 1;
order: 1;
他声称支持:
我认为其余的flexbox属性未经过修订,因此您只需使用“标准”前缀集(-ms
,-moz
,-webkit
,无前缀)。