HTML中的<pre>标记具有固定的宽度

我使用<pre>标签显示预格式化的文本(包括换行符,空格和制表符等),但没有换行符的大行显示在一行中,并添加了一个滚动条。

我想限制<pre>标签的宽度(这样,大的行被分解到新行,不需要滚动,这是可能的,还是有一些其他的标签,我可以使用?

代码是这样的:

 $.post("contr.php", q1, function(data) { $("#el_text").html("< pre>"+data+"< /pre>"); }); 

几乎所有的浏览器都支持这种方法:

 pre { white-space: -moz-pre-wrap; /* Mozilla, supported since 1999 */ white-space: -pre-wrap; /* Opera */ white-space: -o-pre-wrap; /* Opera */ white-space: pre-wrap; /* CSS3 - Text module (Candidate Recommendation) http://www.w3.org/TR/css3-text/#white-space */ word-wrap: break-word; /* IE 5.5+ */ } 

我不久前遇到了同样的问题,并在这里find了解决办法: http : //codingforums.com/showthread.php?t=43293

 pre{ white-space:pre-wrap; } 

..做你想在Firefox和Chrome – 包装行,但保留空白。 但不幸的是,IE似乎不支持它(虽然我还没有看过IE8)。

编辑:IE8 支持它 。

如果空间被分配到块的权利,即使做了什么卡里姆说,那么也许你已经封闭在里面。

表格标签为整个前置string分配空间,即使当内容可能是文字包装时,这也会导致前置区块右侧的空白区域

在这种情况下,replace一些其他标签,如div或段落