如果你不必是语义的(因为你会得到很多跨度),我的意思是如果你只需要视觉结果,另一种解决方案是使用 flexbox。
所以你有你的<div id="#myText">TEXT 1</div>
我们需要得到这个:
<div id="#myText">
<span>T</span>
<span>E</span>
<span>X</span>
<span>T</span>
<span> </span>
<span>1</span>
</div>
那么你可以应用CSS:
#myText {
display: flex;
flex-direction: row;
justify-content: space-between;
}
为了将文本转换为跨度,您可以使用 jQuery 或其他任何东西。这里有 jQuery:
var words = $('#myText').text().split("");
$('#myText').empty();
$.each(words, function(i, v) {
if(v===' '){
$('#myText').append('<span> </span>');
} else {
$('#myText').append($("<span>").text(v));
}
});
为了获得更好的结果,请将 put letter-spacing: 0 删除到 #myText 中,以便应用任何额外的间距。