我知道Internet Explorer有一个自动换行的样式,但我想知道是否有跨浏览器的方法可以在div中进行文本处理。
最好是CSS但JavaScript代码段也可以正常使用。
编辑:是的,指的是长串,欢呼伙计们!
答案 0 :(得分:304)
阅读原始评论,rutherford正在寻找一种跨浏览器方式来包装完整文本(通过使用IE的自动换行来推断,旨在打破不间断的字符串)。
/* Source: http://snipplr.com/view/10979/css-cross-browser-word-wrap */
.wordwrap {
white-space: pre-wrap; /* CSS3 */
white-space: -moz-pre-wrap; /* Firefox */
white-space: -pre-wrap; /* Opera <7 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* IE */
}
我现在已经习惯了这个课程,并且像魅力一样。 (注意:我只在FireFox和IE中测试过)
答案 1 :(得分:31)
以前的大多数答案在Firefox 38.0.5中对我不起作用。这确实......
<div style='padding: 3px; width: 130px; word-break: break-all; word-wrap: break-word;'>
// Content goes here
</div>
文档:
答案 2 :(得分:14)
white-space: pre-wrap
答案 3 :(得分:11)
Aaron Bennet的解决方案对我来说非常合适,但我不得不从他的代码中删除这一行 - &gt; white-space: -pre-wrap;
因为它发出错误,所以最终的工作代码如下:
.wordwrap {
white-space: pre-wrap; /* CSS3 */
white-space: -moz-pre-wrap; /* Firefox */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* IE */
}
非常感谢
答案 4 :(得分:0)
正如大卫提到的那样,DIV默认 包装单词。
如果你指的是没有空格的很长的文本字符串,我所做的就是处理字符串服务器端并插入空跨度:
thisIsAreallyLongStringThatIWantTo<span></span>BreakToFitInsideAGivenSpace
这并不准确,因为字体大小等存在问题。如果容器的大小可变,则span选项有效。如果它是一个固定宽度的容器,你可以继续插入换行符。
答案 5 :(得分:0)
您可以尝试指定div的宽度,无论是像素,百分比还是ems,此时div将保持该宽度,文本将自动换行然后在div中。