边距:如果在 Firefox 中显示为框,则自动不起作用

ush*_*dow 3 css firefox flexbox

在 Firefox(8.0 版)中,如果我将一个元素指定为display: -moz-boxand margin: auto,则该元素不再位于其父元素的中心。它适用于 Chrome。这是 Firefox 的问题,还是我遗漏了什么?我怎么解决这个问题?

一种解决方法是添加一个包装div元素并将其设置displayblock,但这很难看。

Bor*_*sky 5

-moz-box是 Firefox 中 XUL 框的显示类型。它们不遵循普通的 CSS 框模型,因此在使用自动边距时不要自动居中。因此,就目前而言,此处的行为在 Firefox 中是正确的:这只是 XUL 框的行为。

请注意-webkit-box(我认为这就是您所说的“在 Chrome 中工作”的意思)完全不同:它是非常早期的 CSS flexbox 草稿之一的实现。它-moz-box与当前的 flexbox 草稿共享一些表面特征,但在其他方面完全不同。

现在真正的问题是……你到底想做什么?