加上 word-break:break-all 就搞定了
L@_@K
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD> <BODY>
  <div id="a" style="width:100px;height:100px;border:1px solid #dddddd; word-break:break-all"> 
        为何中文会自动换行? 
英文就不会: 
testtesttesttesttesttest 
        </div>  </BODY>
</HTML>

解决方案 »

  1.   

    加上css
    div
    {
       word-break:break-all;
    }不管是否是单词,都会强制换行!
      

  2.   

    /**IE和FF下都能换行的样式,结合了xml;**/
        .wordwrap
        {
             word-wrap:break-word;
             word-break:break-all;
            -moz-binding: url('../../JavaScript/wordwrap.xml#wordwrap');//这里的路径自己安排!
             overflow: hidden;
        }
    /**结束**/
    wordwrap.xml的内容如下
    <?xml version = "1.0"?><bindings xmlns = "http://www.mozilla.org/xbl" xmlns:html = "http://www.w3.org/1999/xhtml"><binding id = "wordwrap" applyauthorstyles = "false"> <implementation>
    <constructor>
    //<![CDATA[

    var elem = this; elem.addEventListener('overflow',
    function()
    {
    var exp = /<&#8203;\/*[&#8203;_\s="'\w]+>/g;

    var txt = elem.innerHTML;
    var chars = txt.split('');
    var newTxt = chars.join('&#8203;');
    newTxt = newTxt.replace(exp, reconstructTag);
    elem.innerHTML = newTxt;
    },false);

    function reconstructTag(_tag)
    {
    return _tag.replace(/&#8203;/g, '');
    } //]]>
    </constructor>
    </implementation>
    </binding></bindings>
    <!-- Web2 -->