原文:http://blog.sina.com.cn/s/blog_9e5db79e0100yr8w.html
css
CSS讓英文單詞的自動換行
在製做網頁過程當中,css樣式編寫中,可能會遇到文字換行的問題,其中英文換行可能會困擾着不少初學者,而今天我就這個問題進行相應的闡述,學過css的朋友應該都知道,控制文字是否換行能夠直接使用css中的word-break來進行調整,可是對於英文來講,咱們要讓其能知足全部瀏覽器的須要,僅僅這一個屬性是不夠的。
根據我我的所瞭解的一些資料顯示,英文過多,過長,不單單影響到表格,還影響到了div,有可能會撐破錶格和div,對於表格和div的解決方法各有不一樣,首先咱們來看在表格中改如何解決這個問題。
若是你使用的是表格佈局,表格內的內容多以英文爲主,並且英文不會換行,那麼你只須要在css中加入以下代碼便可
table {
table-layout: fixed; word-break:break-all;
word-wrap:break-word;
}
若是你使用的div+css佈局,那麼遇到div中的文字被英文撐破時,能夠在css中加入以下代碼
div{
word-break:break-all;
word-wrap:break-word;
}
根據 CSS2中文手冊
word-break版本:IE5+專有屬性 繼承性:有
語法:
word-break : normal | break-all | keep-all
取值:
normal:默認值,容許在詞間換行
break-all:該行爲與亞洲語言的normal相同。也容許非亞洲語言文本行的任意字內斷開。該值適合包含一些非亞洲文本的亞洲文本
keep-all:與全部非亞洲語言的 normal 相同。對於中文,韓文,日文,不容許字斷開。適合包含少許亞洲文本的非亞洲文本
說明:
設置或檢索對象內文本的字內換行行爲。尤爲在出現多種語言時。
對於中文,應該使用 break-all 。
此屬性對於 currentStyle 對象而言是隻讀的。對於其餘對象而言是可讀寫的。
對應的腳本特性爲 wordBreak 。
示例:
div {word-break : break-all; }
應用於:
IE5.0+
word-wrap版本:IE5.5+專有屬性 繼承性:有
語法:
word-wrap : normal | break-word
取值:
normal : 默認值。容許內容頂開指定的容器邊界
break-word : 內容將在邊界內換行。若是須要,詞內換行( word-break )也將發生
說明:
設置或檢索噹噹前行超過指定容器的邊界時是否斷開轉行。
此屬性僅做用於有佈局的對象,如塊對象。內聯要素要使用該屬性,必須先設定對象的 height 或 width 屬性,或者設定 position 屬性爲 absolute ,或者設定 display 屬性爲 block 。
此屬性對於 currentStyle 對象而言是隻讀的。對於其餘對象而言是可讀寫的。
對應的腳本特性爲 wordWrap 。
示例:
div { word-wrap: break-word; word-break: break-all; }
注意這個
break-word : 內容將在邊界內換行。若是須要,詞內換行( word-break )也將發生
因此 word-wrap夠用了,默認會不拆開單詞換行,可是若是真有一個很是長的單詞,好比上次某發錯了版的史上最恐怖的12個英文單詞,它也是會拆行的,這樣避免了表格被撐壞。
不過這個沒有被w3c做爲css2的標準,因此Mozilla 不支持這個屬性,若是你們都好好寫英文單詞就沒事情,Firefox也是不拆開單詞換行的,若是碰到有人寫很長的單詞,Mozilla Firefox就不會換行一直撐破了。
html