css - 溢出文本可以居中吗?

标签 css text overflow center alignment

当我为宽度大于文本宽度的元素指定 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/

相关文章:

css - 移动优化 CSS

html - bootstrap-select 选项列表仅与底层组件一样长

Javascript Jquery 向下滚动 1 页

javascript - Bootstrap 模态内容未在 Firefox 或 Safari 以及手机中显示

linux - 如何使用sed删除带通配符的字符串

database - WebSQL 中的最大容量 TEXT 数据类型

html - 在固定位置元素下方滚动文本

html - Bootstrap span2 不工作

html - "Float"图像向上与 CSS

java - 将包含 ""或 () 的代码插入文本字段