当我为宽度大于文本宽度的元素指定 text-align:center
时,文本在元素的内容框中居中(如预期的那样)。
当我为宽度小于文本宽度的元素指定 text-align:center
时,文本与内容框的左边缘对齐并溢出右侧内容框的边缘。
您可以看到两个案例的实际应用 here .
是否有任何 CSS 魔术可以使文本同样地溢出内容框的左边缘和右边缘,从而保持居中?
最佳答案
我知道这个问题很老了,但我遇到了同样的问题,并找到了一个更简单的解决方案,只需一个跨度。 http://jsfiddle.net/7hy3w2jj/
<div>some text</div>
<div>
<span class="text-overflow-center">some text that will overflow</span>
</div>
那么你只需要这个定义
.text-overflow-center {
margin-left: -100%;
margin-right: -100%;
text-align: center;
}
如果您可以使用伪元素,则根本不需要 html 也可以完成。 只需将这些定义添加到您的文本容器中。 http://jsfiddle.net/7287L9a8/
div:before {
content: "";
margin-left: -100%;
}
div:after {
content: "";
margin-right: -100%;
}
伪变体的唯一缺点是它只能处理一行文本。
关于css - 溢出文本可以居中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6618648/