为什么HTML中输入中文可自动换行而英文不行?

1、在一个width=100px的div块里输中文到了100px会自动换行,英文却会不断加大width像素(不会换行),这是怎么回事?

答:肯定是连打了,正确的英文单词之间一定有空格, 一但有空格就会换行!!

2、如何实现不管是否是单词,都会强制换行?

答:div加上word-break:break-all;样式。但是ie下可以,ff下不可以。

3、如何在ie和ff下都可以?

答:结合xml

  .wordwrap
    {
       word-wrap:break-word;
       word-break:break-all;
       -moz-binding:url('../../JavaScript/wordwrap.xml#wordwrap');//这里的路径自己安排!
       overflow: hidden;
    }

wordwrap.xml的内容如下








//
var elem = this;

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

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

function reconstructTag(_tag)
{
return _tag.replace(/​/g, '');
}

//]]>







你可能感兴趣的:(Web前端)