如何打破html中的长字?

时间:2011-12-26 11:41:10

标签: javascript html

我在javascript中动态创建列表。我想以点点(.....)打破长话。例如,如果单词是“软件生命周期开发”,我想将其更改为“Software life cycl ....”。

我用“WORD-BREAK:BREAK-ALL; white-space:normal;” 我目前的输出是:

软件生命周期  发展。

谁能说出来,如何解决这个问题?提前谢谢。

  var parent = document.getElementById('searchlistview');
var listItem = document.createElement('li');
listItem.setAttribute('id', 'listitem_' + listId);
listItem.setAttribute('data-icon', 'false');
listItem.innerHTML = "<img src=" + imagesrc + " class='ui-li-icon ui-li-has-icon'></img>
<a target='_black' data-role='button' href='#' id=" + listId + " name= " + url + " data-theme ='c' rel='external' 
data-inline='true' style='margin-left:0em; WORD-BREAK:BREAK-ALL;white-space:normal; ' >" + searchName + "<p style='margin-top:1px;margin-left:1px;'>
File size: " + fileSize + "</p></a>";
parent.appendChild(listItem);

4 个答案:

答案 0 :(得分:4)

你可以尝试这个css

text-overflow:ellipsis;

文本溢出时会放...。请参阅此page以供参考。

答案 1 :(得分:3)

看看css省略号是否可以帮到你。您可以在

找到更多详细信息

http://www.w3schools.com/cssref/css3_pr_text-overflow.asp

http://mattsnider.com/css/css-string-truncation-with-ellipsis/

答案 2 :(得分:1)

尝试:

function wbr(str, num) { 
  return str.replace(RegExp("(\\w{" + num + "})(\\w)", "g"), function(all,text,char){
    return text + "<wbr>" + char;
  });
}

来源:http://ejohn.org/blog/injecting-word-breaks-with-javascript/

答案 3 :(得分:1)

style="text-overflow: ellipsis;"

将解决问题。