我需要将一个左对齐文本块居中在一个div中,但是我需要文本块的可视宽度居中而不是块本身。
在许多情况下,这可能是相同的,但想象一种情况,其中div相当窄(考虑移动设备宽度),而文本太长无法放在一行内,因此需要溢出。
在下面的示例中,我将文本块显示为浅蓝色以进行说明,但实际上它们将与父div相同颜色(白色)。任何使用的文本中也没有换行符。
在1a中,文本只有一行,且小于文本块的最大宽度,因此我可以将文本块设置为文本的宽度,没有问题。
然而,在2a中,文本长度超过了最大宽度,因此换行到下一行。这样做的效果是可见的文本块不再居中。
如何仅使用HTML和CSS将这两种情况都显示为1b和2b?
编辑1:似乎每个人都在告诉我如何实现1a和2a中的情况,但我已经有了。我想要实现1b和2b中的情况。
编辑2:我正在使用的代码基本上与David在他的链接中给出的代码相同(http://jsfiddle.net/davidThomas/28aef/)。文本区域的颜色只是为了说明这一点。如果你将其更改为白色(http://jsfiddle.net/28aef/2/),你可以看到文本块不再居中(即左右边距不相等)。