我有一个绝对定位的 div,带有一个 display: box
在 Chrome 中它工作得很好,div 的子级水平对齐,但在 Firefox 中它似乎不起作用。
如果我删除 position: absolute
它在两种浏览器中都可以正常工作,但我需要它。
最佳答案
您正在使用的实验性显示类型意味着完全不同的东西,它们都不匹配 display: box
,原因很简单,最后一个不存在而且永远不会存在(CSS 规范将正在使用 display: flexbox
,其行为与所有带前缀的“框”显示截然不同,所有这些都具有彼此截然不同的行为)。
由于它们的含义不同,因此浏览器对 CSS 中绝对定位元素的显示值更改为 block
或 table
的部分有所不同。 Gecko 将 -moz-box
更改为 block
。 WebKit 不会将 -webkit-box
更改为任何其他内容。
我建议不要使用在不久的将来会消失的实验性显示类型。如果您确实必须使用它们,您可能想要在您的“盒子”周围包裹一个方 block 并定位该方 block 。
关于firefox - css3 flexbox 在绝对 div 中水平对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9093277/