CSS3 Flexbox:display:box vs. flexbox vs. flex

69 css flexbox

我昨天成了学校里使用css3 flexbox语句的网站.我之前从未使用过它.所以我稍微谷歌了.并发现了很多不同风格的flexbox语句.
有些人写display: box;,有些使用display: flexbox;和其他display: flex;.

那么有什么不同?我该用哪个?

Mic*_*idt 128

这些是不同的风格.
display: box;是2009
display: flexbox;的版本.
display: flex;是2011 的版本.是实际版本.

保罗爱尔兰的报价

警告:Flexbox已经过一些重大修改,所以这篇文章已经过时了.总之,本文所基于的旧标准(Flexbox 2009)自v4开始在Chrome中实现,自v2开始在Chrome和IE10 beta中实现.

从那时起,新的flexbox标准首次亮相并开始在Chrome 17中首次亮相.Stephan Hay 撰写了关于新的flexbox实现的指南.从那时起,该规范经历了命名更改,并开始在Chrome 21中登陆.Chrome 22可以稳定地实施最新规范.

在这一点上,实施要么有风险,所以要注意.

是关于不同flexbox语句的博客.
是css-tricks关于不同版本的博客文章.

当我使用flexbox时,我总是这样写:

display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
Run Code Online (Sandbox Code Playgroud)

编辑:
仍然不是每个人都有能够查看flexbox布局的浏览器/设备.因此,对于后备解决方案或备选方案,Kenan Yusuf 撰写了关于如何在不使用flexbox的情况下使用flexbox的文章.

  • @Ken不,`-webkit-box`是第一位的.您的上一次声明应始终是最新声明或W3C标准.但是我在`-webkit-flex`之后推荐`-ms-flexbox`因为IE12/Edge支持`-webkit-flex`,但是你在技术上希望IE使用正确的`-ms -`前缀而不是`-webkit -`.这是一个普遍谨慎的挑剔虽然显示:flex; 这里不受IE12的影响. (3认同)

and*_*dyb 9

该规范经历了多次迭代,见2009年,2012年,2013年以及每次更改价值时.display: flex;是最新的.

它仍然是草案规范,因此任何当前的实现仍可能发生变化.


小智 6

显示:柔性;目前是最新且更好的版本,我们可以在我们的代码中使用它。

所以就去做吧。