当前位置:  开发笔记 > 前端 > 正文

保留HTML中的换行符但包装文本:可能吗?

如何解决《保留HTML中的换行符但包装文本:可能吗?》经验,为你挑选了1个好方法。

我今天遇到了一个有趣的问题.我有一封我从网页发送的短信.我正在显示预览,并希望将预览保留为固定字体,保留空白区域,因为这是纯文本电子邮件的显示方式.

基本上我想要一些像记事本一样的东西:换行符会发出一个换行符,但文本将以其他方式换行以适应它的容器.

不幸的是,除非我遗漏了一些非常明显的东西,否则这很难实现.我试过了:

    CSS white-space: pre.这样可以保留空白区域,但不会包裹文本行,因此它们会在长行中出现边框;

    将textarea元素设置为只读,没有边框,因此它基本上像a div.这里的问题是IE在严格模式下不喜欢textareas的100%高度.奇怪的是,他们在怪癖模式下也没关系,但这对我来说不是一个选择.

    CSS white-space: prewrap.这是CSS 2.1所以可能没有得到广泛支持(我很高兴,如果它在IE7和FF3中受支持;我不关心IE6这个作为它的管理功能,没有人会运行IE6将使用此页面) .

还有其他建议吗?真的可以这么难吗?

编辑:无法评论所以更多信息.是的,目前我正在使用字体Courier New(即固定宽度)并在服务器端使用正则表达式来替换带有
标签的换行符,但现在我需要编辑内容,它只是让我感到尴尬,你需要剥离并添加
s以使其工作.

有没有更好的方法?



1> Ms2ger..:

尝试

selector {
  word-wrap: break-word; /* IE>=5.5 */
  white-space: pre; /* IE>=6 */
  white-space: -moz-pre-wrap; /* For Fx<=2 */
  white-space: pre-wrap; /* Fx>3, Opera>8, Safari>3*/
}


还有`white-space:pre-line;`。有关方便的指南:[css技巧](http://css-tricks.com/almanac/properties/w/whitespace/)
推荐阅读
牛尾巴2010
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有