最近的项目遇到了这样的需求:(要求标题部分不管文字多少,都必须两端对齐)

如下图:

CSS实现文字两端对齐-LMLPHP

当时也没有多想直接使用‘ ’进行代替,毕竟产品同学想快一点看到效果,不敢怠慢!不过到第二个页面就傻眼了。

如图:

CSS实现文字两端对齐-LMLPHP

这很明显‘ ’已经无法满足我了,只好上 。

这里简单说下几种空格的区别:

  半角的不断行的空白格

  半角的空格

  全角的空格

页面效果倒是有了,但是后面复盘的时候发现这样的写法一是不灵活(虽然这里是固定内容),二是不够语义化。所以自然想通过css的方式来解决,在text-align中我们可能用到最多的是center属性,还有一个属性是justify(两端对齐),不过页面刷新后并没有(luan)用。其实这里的text-align:justify是可以单独使用的,前提是文本需要超过两行,并且最后一行不会两端对齐。

因此我们需要借助一个空标签span。

html:

<div>职务:<span></span></div>

css:

div{
width:200px;
text-align: justify;
}
div span{
display:inline-block;
width:100%;
}

这里最完美的做法是使用::after伪元素代替空标签。

PS:后面查阅资料发现text-align-last: justify;可以实现最后一行两端对齐,但似乎兼容性很差(Safari不支持)

CSS实现文字两端对齐-LMLPHP

CANIUSE

05-11 18:09