【发布时间】:2012-02-23 23:35:21
【问题描述】:
我有一个绝对定位的 div,带有 display: box
在 Chrome 中它工作得非常好,div 的子元素水平对齐,但在 Firefox 中它似乎不起作用。
如果我删除 position: absolute 它在两个浏览器中都可以正常工作,但我需要它。
【问题讨论】:
我有一个绝对定位的 div,带有 display: box
在 Chrome 中它工作得非常好,div 的子元素水平对齐,但在 Firefox 中它似乎不起作用。
如果我删除 position: absolute 它在两个浏览器中都可以正常工作,但我需要它。
【问题讨论】:
您使用的实验显示类型意味着完全不同的东西,它们都不匹配display: box,原因很简单,最后一个不存在并且永远不会存在(CSS 规范将使用display: flexbox,与与所有带有前缀的“框”显示完全不同的行为,所有这些显示的行为彼此非常不同)。
由于它们的含义不同,浏览器处理 CSS 的部分,即绝对定位元素的显示值更改为 block 或 table 略有不同。 Gecko 将 -moz-box 更改为 block。 WebKit 不会将 -webkit-box 更改为其他任何内容。
我建议不要使用在不久的将来会消失的实验性显示类型。如果您确实必须使用它们,您可能希望在您的“盒子”周围包裹一个块并定位该块。
【讨论】: