大家知道CSS控制文本自動換行嗎?下面我們就給大家詳細介紹一下吧!我們積累了一些經驗,在此拿出來與大家分享下,請大家互相指正。
1.你定死表格的寬度,即給表格一個寬度值(是數值,不是百分比)
2.強制不換行
div{
//white-space:不換行;normal 默認;nowrap強制在同一行內顯示所有文本,直到文本結束或者遭遇 br 對象
white-space:nowrap; }
自動換行
div{
word-wrap: break-word;
//word-break設置強行換行;normal 亞洲語言和非亞洲語言的文本規則,允許在字內換行
word-break: normal;
}
強制英文單詞斷行
div{
word-break:break-all;
}
3.總結了一下,只要在CSS中定義了如下句子,可保網頁不會再被撐開了。
table{table-layout: fixed;}
td(word-break: break-all; word-wrap:break-word;)
注釋一下:
1.第一條table{table-layout: fixed;},此樣式可以讓表格中有!!!(感歎號)之類的字符時自動換行。
2.td{word-break: break-all},一般用這句這OK了,但在有些特殊情況下還是會撐開,因此需要再加上後面一句(word-wrap:break-word;)就可以解決。此樣式可以讓表格中的一些連續的英文單詞自動換行。
http://www.knowsky.com/
(1)語法:
word-break : normal | break-all | keep-all
參數:
normal : 依照亞洲語言和非亞洲語言的文本規則,允許在字內換行
break-all : 該行為與亞洲語言的normal相同。也允許非亞洲語言文本行的任意字內斷開。該值適合包含一些非亞洲文本的亞洲文本
keep-all : 與所有非亞洲語言的normal相同。對於中文,韓文,日文,不允許字斷開。適合包含少量亞洲文本的非亞洲文本
(2)語法:
word-wrap : normal | break-word
參數:
normal : 允許內容頂開指定的容器邊界
break-word : 內容將在邊界內換行。如果需要,詞內換行(word-break)也行發生
說明:
設置或檢索當當前行超過指定容器的邊界時是否斷開轉行。
對應的腳本特性為word-wrap。請參閱我編寫的其他書目。
(3)語法:
table-layout : auto | fixed
參數:
auto : 默認的自動算法。布局將基於各單元格的內容。表格在每一單元格讀取計算之後才會顯示出來。速度很慢
fixed : 固定布局的算法。在這算法中,水平布局是僅僅基於表格的寬度,表格邊框的寬度,單元格間距,列的寬度,而和表格內容無關
說明:
如何讓表格自動換行?
設置或檢索表格的布局算法。
對應的腳本特性為tableLayout。
4.按照網上大多數文章的說法,只要在CSS中加入:
代碼
..........
Code:
table {
table-layout:fixed;word-break:break-all;word-wrap:break-word;}
div{word-break:break-all;word-wrap:break-word;}
就可以解決表格和層被撐破,最初我也是這樣做的。不過這樣的代碼會造成一個問題,你會發現英文詞全部被截斷了,這不符合英語的書寫習慣也不利於閱讀。
後來我發現上述代碼改寫一下就可以做到既防止表格/層撐破又防止單詞斷裂了。
如下:
代碼
Code:
table {
table-layout: fixed;
word-wrap:break-word;
}
div {
word-wrap:break-word;
}
這也是現在我用的代碼。
相信大家已經學會CSS控制文本自動換行了吧!感謝大家對我們網站的支持!
相關推薦:
divcssimg標簽下多余空白BUG解決方法介紹