首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > CSS >

(转)解决长串不能自动换行的有关问题和td中汉字自动换行 && CSS强制不换行

2012-09-06 
(转)解决长串不能自动换行的问题和td中汉字自动换行 && CSS强制不换行本文转自:http://blog.163.com/qiang

(转)解决长串不能自动换行的问题和td中汉字自动换行 && CSS强制不换行

本文转自:

http://blog.163.com/qiangyongbin2000@126/blog/static/7751781920101016102717552/

?

Html中td自动换行问题

问题:
表格有个字段,有可能是长串连续的数字,如1234567787897888888888888888888888,又有可能是一句话,如This ? value ? is ? assigned ? by ? the ? merchant’s ? bank ? or ? processor. ??
想让一定长度处自动换行,用<td ? width=50>来设定的话,数字却不自动换行,因为系统把数字当成了一个单词。 ??
我设定<table ? rules="all" ? style="table-layout:word-wrap:break-word;word-break:break-all">数字是换行 了,但是又会给某个英语单词给打断,这不符合国外客户的需求了。。。 ??
实在不知道该怎么搞。。

回答:
1、<table style="table-layout:fixed;word-wrap:break-word;"></table>
2、严格地讲,你的要求超越了CSS的能力范围。 ??

word-wrap ? : ? normal ? | ? break-word---------内容将在边界内换行,如果指定为break-word,词内换行(word-break)也将发生。 ? ???
word-break ? : ? normal ? | ? break-all ? | ? keep-all ? ? ???
normal ? : ?  依照亚洲语言和非亚洲语言的文本规则,允许在字内换行。 ??
break-all ? : ?  该行为与亚洲语言的normal相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本。 ??
keep-all ? : ?  与所有非亚洲语言的normal相同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本 。? ? ???
table-layout ? : ? auto ? | ? fixed ? ? ???
auto ? : ?  默认的自动算法。布局将基于各单元格的内容。表格在每一单元格读取计算之后才会显示出来。速度很慢。 ??
fixed ? : ?  固定布局的算法。在这算法中,水平布局是仅仅基于表格的宽度,表格边框的宽度,单元格间距,列的宽度,而和表格内容无关。?解决长串英文字母显示不能自动换行的问题和td中汉字自动换行 && CSS强制不换行
2008年07月16日 星期三 06:57 P.M.

例如:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa不能处理自动换行,将表格伸的很长很长,而汉字字符却可以自动换行。
原因是:
英文字母之间如果没有空格,系统认为是一个单词,就不会自动换行。汉字就没有这种情况。
解决办法:
用表格把要显示的内容装起来。
在<table>标签中加入“style='TABLE-LAYOUT: fixed'”,
在需要强制单词换行的<td>标签中加入“style='word-WRAP: break-word'”。
这样就可以了。

(该解决办法可行,亲测)

?? ? ?Div 中 : ?div 实现长英文字母自动换行CSS

IE浏览器
#wrap{white-space:normal; width:200px; }
或者
#wrap{word-break:break-all;width:200px;}
Firefox浏览器
#wrap{white-space:normal; width:200px; overflow:auto;}
或者
#wrap{word-break:break-all;width:200px; overflow:auto; }

2、不设置单元格宽度,但汉字会自动换行:

????? 解决方法: <table style='word-break:keep-all'>

CSS强制不换行

word-break属性, keep-all;不换行。。???? IE7和FF?? , IE6 不行。。

white-space: nowrap;??????? IE6 及一下版本

顺便写下语法:

语法:
white-space : normal | pre | nowrap?
取值:
normal?? : 默认值。默认处理方式。文本自动处理换行。假如抵达容器边界内容会转到下一行?
pre?? : 换行和其他空白字符都将受到保护。这个值需要IE6+或者 !DOCTYPE 声明为 standards-compliant mode 支持。如果 !DOCTYPE 声明没有指定为 standards-compliant mode ,此属性可以使用,但是不会发生作用。结果等同于 normal 。参阅 pre 对象?
nowrap?? : 强制在同一行内显示所有文本,直到文本结束或者遭遇 br 对象。参阅 noWrap 属性?
说明:
设置或检索对象内空格字符的处理方式。
空格字符,像换行,空格,TAB,在HTML文档中默认的是被忽略的。当此属性设置为 normal 或者 nowrap 时,你可以使用不换行空格的命名实体??? 来添加空格,用 br 元素来添加换行。此属性对你使用文档对象模型(DOM)操作的内容的影响与其对IE显示内容的影响一样。
此属性作用于块对象。
此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。
对应的脚本特性为 whiteSpace 。

?

热点排行