1. 程式人生 > >CSS-中英文兩端對齊,英文不斷詞,自動換行

CSS-中英文兩端對齊,英文不斷詞,自動換行

CSS:


{   
    word-break: keep-all;
    word-wrap: break-word; // 只對英文起作用,以單詞作為換行依據。
    white-space: pre-wrap; //只對中文起作用,強制換行。
    text-align:justify;  //css英文語句的兩端對齊:
    text-justify:inter-ideograph;
}

禁止換行:

{ 
    white-space:nowrap; 
    overflow:hidden;
    text-overflow:ellipsis; //讓多出的內容以省略號...
來表達。但是這個屬性主要用於IE等瀏覽器,Opera瀏覽器用-o-text- white-space:nowrap; }

單行文字如果超出2行用省略號表示:

.text {
 width:220px;
 word-break:break-all;
 display:-webkit-box;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 overflow:hidden;
}

word-break 屬性規定自動換行的處理方法。

normal 使用瀏覽器預設的換行規則。
break-all 允許在單詞內換行。
keep-all

只能在半形空格或連字元處換行。

word-break 當行尾放不下一個單詞時,決定單詞內部該怎麼擺放。
break-all: 強行上,擠不下的話剩下的就換下一行顯示唄。
keep-all: 放不下了,那就另起一行展示,再放不下,也不退縮。

word-wrap 當行尾放不下時,決定單詞內是否允許換行
normal: 單詞太長,換行顯示,再超過一行就溢位顯示。
break-word: 當單詞太長時,先嚐試換行,換行後還是太長,單詞內還可以換行。

white-space: normal | nowrap | pre | pre-wrap | pre-line 

pre: 保留所有的空格和回車,且不允許折行。
pre-wrap:

保留所有的空格和回車,但是允許折行。
pre-line: 會合並空格,且允許折行

text-align:justify 是專門為英文設計的,用來實現英文語句的兩端對齊

text-justify : 
auto | distribute |distribute-all-lines | distribute-center-last | inter-cluster | inter-ideograph | inter-word | kashida | newspaper 

auto :
預設值。允許瀏覽器代理使用者確定使用的兩端對齊法則。

distribute :
處理空格很像newspaper ,適用於東亞文件。尤其是泰文。

distribute-all-lines :
兩端對齊行的方式與distribute 相同,也同樣不包含兩段對齊段落的最後一行。適用於表意字文件

distribute-center-last :
未實現。

inter-cluster :
調整文字無詞間空格的行。這種模式的調整是用於優化亞洲語言文件的。

inter-ideograph :
為表意字文字提供完全兩端對齊。他增加或減少表意字和詞間的空格

inter-word :
通過增加字之間的空格對齊文字。該行為是對齊所有文字行最快的方法。它的兩端對齊行為對段落的最後一行無效

kashida :
通過拉長選定點的字元調整文字。這種調整模式是特別為阿拉伯指令碼語言提供的。需要IE5.5+支援

newspaper :
通過增加或減少字或字母之間的空格對齊文字。是用於拉丁文字母表兩端對齊的最精確格式

說明:設定或檢索物件內調整文字使用的對齊方式。因為這個屬性影響文字佈局,所以text-align 屬性必須被設定為justify 。此屬性只作用於塊物件。此屬性對於currentStyle 物件而言是隻讀的。對於其他物件而言是可讀寫的。對應的指令碼特性為textJustify 。

以上方法對chrome(360也是chrome核心)無效,還需再加上下面程式碼:
word-break:break-all