2018年04月6日网站服务器迁移完成……

固定宽度的DIV中英文不能自动换行

前端开发 苏 demo 2059℃ 0评论

很久前的一个问题,当时直接就overflow:hidden了,还说出:这个问题只能这样解决不了的了,我懒惰…..

病症(其实不应该说病症):
   在一个设定好宽度的div中,当我们输入的中文文字长度超过了设定宽度时,会自动换到下一行。但是,如果输入的是英文字母,那么,无论你div设定宽度为多少,英文字母都是不换行直接在同一行输出,导致div的宽度远远超出设定的大小。

原因:
   英文字母之间没有空格的话,它会默认认为这是一个英文单词,所以单词就一次输出不换行。

吖真老中医处方:
   word-break:break-all;
  word-wrap:break-word;

两者区别:
   1、word-break:break-all 内容到达固定宽度处会自动换行,如果该行末端有个英文单词很长,则把单词截断。对FF无效。
   2、word-wrap:break-word 如果该 a行 末端宽度不够显示整个单词,它会自动把整个单词放到下一行 b行 ,而不会在 a行 把单词截断。若 b行 整行都不够一个单词宽,则将单词截断以对齐。对FF、IE有效。

优缺点:
   word-break:break-all能很好的让文本对齐,显得整洁,但是100%切断单词,易读性降低
   word-wrap:break-word比较人性化,但行末会参差不齐

打赏

转载请注明:苏demo的别样人生 » 固定宽度的DIV中英文不能自动换行

   如果本篇文章对您有帮助,欢迎向博主进行赞助,赞助时请写上您的用户名。
支付宝直接捐助帐号oracle_lee@qq.com 感谢支持!
喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情