单行文本两端对齐
实现单行文本两端对齐的两种方法
问题
单行文本如何实现两端对齐?text-align: justify 对最后一行无效,而单行文本会被视为最后一行。
解答
方法一:添加伪元素创建新行
通过 ::after 伪元素添加内容,使原本的单行文本不再是最后一行,从而触发 justify 效果。
<div class="item">
<span class="label">{{item.label}}</span>:
<span class="value">{{item.value}}</span>
</div>
.item {
height: 32px;
line-height: 32px;
margin-bottom: 8px;
}
.label {
display: inline-block;
width: 100px;
text-align: justify;
overflow: hidden;
}
.label::after {
content: '';
display: inline-block;
width: 100%;
}
方法二:使用 text-align-last
text-align-last 属性专门用于定义最后一行的对齐方式,可以直接解决单行文本对齐问题。
.label {
display: inline-block;
width: 100px;
text-align: justify;
text-align-last: justify;
}
关键点
text-align: justify对最后一行文本不生效- 方法一通过伪元素强制创建新行,让目标文本不再是最后一行
text-align-last可以直接控制最后一行的对齐方式text-align-last现代浏览器支持良好,推荐使用
目录