为什么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的内容如下
<?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 -->



  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值