我应该使用display:块,还是应该始终使用display:flex?

Tay*_*lor 3 html css css3 flexbox

我最近已经学到了很多关于flexbox的知识,但是我仍然不清楚一件事。我应该始终将/ 设置displayflex/ inline-flex还是使用block/ 总是有利的inline-block

我发现了几篇有用的文章,但是没有一篇文章回答这个特定的问题。本文介绍了display使用flexbox而不是将它们与比较时不同值之间的区别display: block。问题确实表明使用block/ inline-block已过时,但我还没有看到任何其他来源证实这一点。如果display: block现在已经过时了,我会以为W3学校会这样说(并不是说它们总是正确的,但它们似乎是一个很好的来源)。

这篇文章提到了几个答案,但是同样,它也没有解释何时display: block应使用(而不是display: flex)。

回答的其他文章类似的问题是这一个这一个。虽然两者都是很棒的文章。第一个给了两者优点和缺点,但是flexbox的唯一显着缺点是浏览器兼容性,这与该项目无关。后一篇文章给出了我所看到的最好的答案,即使用display: flex允许元素保留flexbox属性。这是否意味着如果不需要flexbox属性,我应该使用它display: block?会对性能产生影响,还是应该始终使用display: flex

Ori*_*iol 5

它们是不同的盒子布​​局模型。一切都是有效的,每个都有其优点和缺点。

既不block也不inline-block落伍。您仍然可以使用它们,并且CSS工作组仍在添加可以与这些旧版式一起使用的新功能。

flexbox的唯一主要缺点是浏览器兼容性

这是错误的,flexbox有很多缺点,例如缺少浮动和缺少多列

Flex布局在表面上类似于块布局。它缺少许多可用于块布局的更复杂的以文本或文档为中心的属性,例如floatcolumn。作为回报,它获得了简单而强大的工具,可以按照Web应用程序和复杂网页经常需要的方式来分配空间和对齐内容。

这是否意味着如果不需要flexbox属性,我应该使用 display: block

即使您不需要屈曲,Flexbox仍然可以工作。但是在那种情况下,我会劝阻它。块布局更简单,这可能意味着浏览器可以更快地渲染它。