如何创建一个包含左对齐元素的宽度不确定的居中div



在紫色div内的红色div内有几个统一的蓝色元素(<div style="display: inline-block;">)。模型(imgur)。

我希望蓝色元素左对齐(一行中的数量与紫色div宽度相适应),并在它们周围包裹一个红色div收缩。但我希望红色div在紫色div内水平居中。

我希望做这样的事情(jsFiddle),但只有当红色div有指定的宽度时,这才有效。

回到这个问题,我找到了一个使用内联CSS而没有javascript的解决方案(这是我没有提到的额外约束)。

如果它很愚蠢而且有效,那就不愚蠢!至少我是这么告诉自己的。

我的解决方案是用几个"不可见"的等宽0高内联块元素填充子元素列表的末尾。我最终不需要"reddiv"来实现这个结果。

以下是我的解决方案:http://jsfiddle.net/3wVTx/8/

在#red上加边距无效吗?当然,这将取决于#purple内部是否还有其他东西。这不是你想要的吗?http://jsfiddle.net/3wVTx/3/

最新更新