(轉)解決長串不能自動換行的問題和td中漢字自動換行 && CSS強制不換行

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 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章