2011-11-17 47 views
2

我有以下CSS如何使文本在DIV不会溢出其宽度

.divTab 
{ 
    width: 700px; 
    height: 550px; 
    overflow:scroll; 
    font-size: small; 
    font-family:"Trebuchet MS", Arial, Helvetica, sans-serif; 
    word-wrap: break-word; 
} 

一个DIV和下面的HTML

<div id="fragment-1"> 
     <div class="divTab"> 
      <pre>'.$my_name.'</pre> 
      <pre>'.$my_servings.'</pre> 
      <pre>'.$my_clients.'<pre> 
      <pre>'.$my_description.'<pre> 
     </div> 
    </div> 

所以现在我的问题是,文本由$my_description带来的溢出宽度,并在底部添加一个滚动,我不希望它溢出其宽度,而是如果它达到divs宽度闯入下一行。我怎样才能做到这一点?

谢谢

回答

6

添加这个CSS:

pre { 
    overflow-x: auto; /* Use horizontal scroller if needed */ 
    white-space: pre-wrap; /* css-3 */ 
    white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */ 
    word-wrap: break-word; /* Internet Explorer 5.5+ */ 
    white-space : normal; 
} 

这里的工作它的一个例子:http://jsfiddle.net/cSa2C/

+1

这工作真的很好谢谢 – user710502

+0

很高兴它的工作。 – deviousdodo

0

从您的代码删除overflow:scroll;

+0

但我希望它垂直溢出,如果高度超过divs大小,我的问题是宽度..-实际上,如果我这样做,文本刚刚离开整个div,并且都搞砸了 – user710502

+0

啊试试把它替换掉与溢出x:自动;而 –

+0

我看到,已经建议。:) –

0

一个<pre>代码背后的想法是,它是“预格式化文本”,在一个固定的宽度显示,只有保存您手动放入的布局。它因此希望你做自己的布局(比如,添加<br />的,你可以,如上回答,改变<pre>的功能,或考虑不使用它们,而是使用,例如,一个普通<div>