方法一:
復制代碼代碼如下:
<div style="width:300px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;"> 任意長度的字符串 </div>
說明:優點是內容可以為任何Html元素,包括超鏈接和圖片等,在IE6中還會在結尾自動顯示省略號。缺點是必須指定寬度數值,並且寬度不能是百分數,否則在IE中會被認為是字符總長的百分比。
方法二:
復制代碼代碼如下:
<input type=”text” style=”width:100%; cursor:default; border-width:0; border-style:none; background-color:transparent;” value=”任意長度的字符串” readonly/>
說明:優點是寬度可以設為百分數。但缺點是內容只能為純文本,不能有超鏈接等內容。
CSS 截斷字符串 CSS是實現文字自動截斷,代碼如下:
復制代碼代碼如下:
div.test{
width:200px;
height:14px;
overflow:hidden;
white-space:nowrap;
text-overflow:ellipsis;
text-overflow: ellipsis;/* IE/Safari */
-ms-text-overflow: ellipsis;
-o-text-overflow: ellipsis;/* Opera */
-moz-binding: url("ellipsis.XML#ellipsis");/*Firefox*/
}
關鍵是text-overflow,其語法如下:
text-overflow:clip | ellipsis
clip:不顯示省略標記(...),而是簡單的裁切
ellipsis:當對象向內文本溢出時顯示省略標記(...)
要注意的是:這個屬性是IE專用的!不過,卻非只有IE可用。該標簽雖然沒有被乖哦公開支持采納,但卻被很多浏覽器的私有屬性所包含。text-overflow單獨使用是不起作用的,必須有white-space:nowrap;overflow:hidden;這兩句的配合方可。前一句的作用是強制在同一行內顯示所有文本,直到文本結束或者遭遇br對象。
不難看出,用text-overflow的最佳場所不是文章的行文,而是用以單行顯示的標題或摘要的列表。
語法:
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 。