我并不奇怪,但我已经提出了这个解决方案,满足了我对对齐的期望.如果你的眼睛因为这个片段而受伤,请给出一些优化建议.我已经知道,在调整灵活元素的大小后,这将不起作用.
我当然更喜欢用纯CSS制作的解决方案,所以如果你正在列出W3C,case text-align: pyramid;
甚至text-align: simon;
(wink)现在是官方要求的.
$('#title').each(function(){
var words = $(this).text().split(/\s+/);
var total = words.length;
var originalWidth = $(this).css("width");
var maxWidth = $(this).width();
var tempText = $(this);
var string = "";
var currentLineString = "";
$(this).empty();
tempText.css("width", "auto");
for (i = 0; i < total; i++){
var newString = words[total-i-1] + " " + currentLineString;
tempText.text(newString);
if (tempText.width() >= maxWidth) {
tempText.text(currentLineString);
maxWidth = tempText.width();
string = currentLineString + "<br>" + string;
currentLineString = "";
i--;
} else {
currentLineString = newString;
}
}
string = currentLineString + "<br>" + string;
tempText.css("width", originalWidth);
$(this).html(string);
});