我們在寫頁面代碼的時候,有時把一個表格的寬度定死後會出現裡面的文字不見了,特別是英文。這就是他換行了所導致的,這時我們就需要加些CSS元素讓它來聽我們的話!根據自己以往的經驗,也參考了些網上的文章,具體如下:
強制不換行
div{
white-space:nowrap;
}
自動換行
div{
word-wrap: break-word;
word-break: normal;
}
強制英文單詞斷行
div{
word-break:break-all;
}
============================================
CSS設定不轉行:
overflow:hidden 隱藏
white-space:normal 預設
pre 換行和其他空白字元都將受到保護
nowrap 強制在同一行內顯示所有文本,直到文本結束或者遭遇 br 對象
設定強行換行
word-break:
normal ; 依照亞洲語言和非亞洲語言的文本規則,允許在字內換行
break-all : 該行為與亞洲語言的normal相同。也允許非亞洲語言文本行的任意字內斷開。該值適合包含一些非亞洲文本的亞洲文本
keep-all : 與所有非亞洲語言的normal相同。對於中文,韓文,日文,不允許字斷開。適合包含少量亞洲文本的非亞洲文本與之間的高度解決辦法
============================================
看了以上的介紹,趕快試一下,看看效果吧!
英文不換行
CSS裡加上 word-break: break-all; 問題解決。這個問題只有IE才有,在FF下測試,FF可以自己加捲軸,這樣也不影響效果
建議大家做Skin時,記得在body裡加 word-break: break-all; 這樣可以解決IE的架構被英文撐開的問題
以下引用word-break的說明, 注意word-break 是IE5+專有屬性
文法:
word-break : normal | break-all | keep-all
參數:
normal : 依照亞洲語言和非亞洲語言的文本規則,允許在字內換行
break-all : 該行為與亞洲語言的normal相同。也允許非亞洲語言文本行的任意字內斷開。該值適合包含一些非亞洲文本的亞洲文本
keep-all : 與所有非亞洲語言的normal相同。對於中文,韓文,日文,不允許字斷開。適合包含少量亞洲文本的非亞洲文本
說明:
設定或檢索對象內文本的字內換行行為。尤其在出現多種語言時。
對於中文,應該使用break-all 。
對應的指令碼特性為wordBreak。請參閱我編寫的其他書目。
樣本:
div {word-break : break-all; }