Javascript 如何用空格分隔文本,如果它是';太长了?

Javascript 如何用空格分隔文本,如果它是';太长了?,javascript,css,Javascript,Css,所以我觉得我有点进退两难 我有一个网格,它有固定宽度的列,但没有固定宽度的行 我有一个这样的场景 Column1, row 1: ThisisalongtextstringthatdoesnotcontainspacesthatIneedtobreakup Column2, row2: This is a long text string that has whitespace and I would like to cut based on whitespace between words

所以我觉得我有点进退两难

我有一个网格,它有固定宽度的列,但没有固定宽度的行

我有一个这样的场景

Column1, row 1: 
ThisisalongtextstringthatdoesnotcontainspacesthatIneedtobreakup

Column2, row2:
This is a long text string that has whitespace and I would like to cut based on whitespace between words.
以下是我试图使这些字符串在我的网格中看起来正常的尝试:

.k-grid td {
    border-style: solid;
    border-width: 0px 0px 0px 1px;
    padding: 0.4em 0.6em;
    vertical-align: middle;
    white-space: normal;
    word-break: keep-all;
}
上面的解决方案使用空格分隔第二个字符串,并将其限制为列宽,从而使字符串看起来可读

但是,上面的代码片段也没有分解上面的长字符串

我使用了
单词break:breakall
这也很好(因为第一个字符串被分解,不会运行到其他列中),但是对于第二个字符串,它像下面这样分解(我不想要):

Break all可对空白词执行以下操作:

This is a long first name wit
h
所以h是挂断的,但我更喜欢第二行的


所以,我想知道如何处理这两个问题

我想你要找的是
wordwrap:break-word


使用
换行:打断单词

打断单词
表示如果行中没有其他可接受的断点,则通常不可断的字可能在任意点断开

div{
宽度:100px;
填充:10px;
外形:1px纯银;
单词包装:打断单词;
}

这是一条长的、不包含空间的、用于爆破的纤维
这是一个包含空格的长文本字符串,我想根据单词之间的空格进行剪切。

您需要使用
中断单词

word-break:break-word;
-webkit-hyphens:auto;
-moz-hyphens:auto;
hyphens:auto;
连字符是备用字符

如果你想把每个字母换成一行,而不是按单词,你可以使用
wordbreak:break all


的启发,我最近在自己的开发中遇到了这个问题,无法找到一个与网站需要支持的浏览器一致工作的CSS解决方案。其他答案建议使用
wordbreak:break-word
,这在一些现代浏览器中效果很好,但有些浏览器将其解释为
wordbreak:break-all


我假定您正在使用服务器端代码创建表。适应旧浏览器的一种方法是通过插入零宽度的空格(​;)来分解长单词,从而为那些旧浏览器提供一条线索,指出在哪里可以分解长单词。当收到文本时,我的代码将查找长度超过20个字符的单词,并将单词分成20个字符的零宽度部分。

您是否尝试过文本溢出:省略号;溢出:隐藏?我不想要省略号,我想要显示网格中的所有内容。我尝试了省略号的方法,但它有很多问题/无法与我的网格一起工作。不幸的是,这是我的备份。这正是我要找的。非常感谢你!我不知道wrap和break-word。奇怪的是,我需要wrap:break-word;而不是单词break:break word。感谢CSS技巧链接,我喜欢他们如何看待HyffSunu的欢迎——我在支持IE7+的项目中使用了这种方法,它工作得很好。非常感谢。