【发布时间】:2013-02-04 00:58:44
【问题描述】:
我已经看到并浏览了太多页面来解释相同的问题并取得了各种成功。我想要做的是想出一种方法,我可以分解大词,这样它们就不会通过将内容拉伸到指定宽度之外来破坏 table/divs/etc。我需要为百分比宽度元素完成此操作。我觉得我已经尝试了一切,但必须有一个解决方案,即使它是一个 hack。到目前为止,我发现的最佳解决方案是使用hyphenator js。它适用于大多数长单词,除了它似乎只适用于可以在字典文件中找到的真实单词。例如,在我的所有示例中都很好地分解了这一点:
这是一个文本字符串,如果我正在使用连字符 json,那么这将与连字符很好地分开,一切都会好起来的
这样的事情不会被破坏,而是会破坏我的网站:
abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
我想使用它的大多数网站都允许用户创建的文本出现在网站上,并且等号和连字符的长字符串很常见。我还注意到stackoverflow通过使用自动换行来解决这个问题:break-word; CSS(至少在Firefox中)。我对此进行了试验,发现它效果很好,但仅在使用预定义的像素宽度时才有效,我需要一个适用于百分比宽度的解决方案。我还使用了 word-wrap: break-all ,但它看起来很丑,因为它在应该换行时会在中间切断小词。
如果可能的话,我想继续使用连字符,因为它在大多数情况下都很好用。也许我已经看这个太久了,但是我可以设置连字符中的某种选项来分解像上面那些太大的非单词吗?也许有人通过调整连字符正则表达式来实现这一点取得了一些成功?
【问题讨论】:
标签: css hyphenation word-break