例,原本以為文字溢出的處理比較複雜,沒想到這麼一簡簡單單的一句話就搞定了,css真是神奇:
| 代碼如下 |
複製代碼 |
.li { white-space:nowrap;overflow:hidden;text-overflow:ellipsis; } |
這隻是使用了CSS中text-overflow屬性,這個屬性比較特殊,在現在的CSS手冊中找不到,但CSS3中有相關的描述:text-overflow-mode。
它有三個值:clip、ellipsis、ellipsis-word。
clip : 不顯示省略標記(…),只是簡單的裁切;
ellipsis : 當對象內文本溢出時顯示省略標記(…),省略標記插入的位置是最後一個字元。
ellipsis-word : 當對象內文本溢出時顯示省略標記(…),省略標記插入的位置是最後一個詞(word)。
text-overflow比較特殊,它不能單獨起作用,而是必須跟在overflow:hidden後面作為補充說明使用。如果我們要給一個段落添加這個效果,那麼可以寫:
| 代碼如下 |
複製代碼 |
p { white-space: nowrap; width: 100%; /* IE6 需要定義寬度 */ overflow: hidden; -o-text-overflow: ellipsis; /* Opera */ text-overflow: ellipsis; /* IE, Safari (WebKit) */ } |
firefox7.0開始相容text-overflow:ellipsis;這樣的話,以後的省略符號就可以做到瀏覽器安全色了,程式碼片段為:
width:200px;/*設定寬度*/
white-space:nowrap;/*設定不折行*/
text-overflow:ellipsis;/*這就是省略符號嘍*/
-o-text-overflow:ellipsis;/*相容opera*/
overflow: hidden;/*設定超過的隱藏*/
一個執行個體
| 代碼如下 |
複製代碼 |
[html] <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh" lang="zh"> <head profile="http://www.w3.org/2000/08/w3c-synd/#"> <meta http-equiv="content-language" content="zh-cn" /> <meta http-equiv="content-type" content="text/html;charset=gb2312" /> <title>div中溢出文字用點代替的代碼</title> <style type="text/css"> /*<![CDATA[*/ li { width:200px; white-space:nowrap; text-overflow:ellipsis; -o-text-overflow:ellipsis; overflow: hidden; } /*]]>*/ </style> </head> <body> <ul> <li><a href="#">web標準常見問題大全web標準常見問題大全</a></li> <li><a href="#">web標準常見問題大全web標準常見問題大全</a></li> <li><a href="#">web標準常見問題大全web標準常見問題大全</a></li> <li><a href="#">web標準常見問題大全web標準常見問題大全</a></li> <li><a href="#">web標準常見問題大全web標準常見問題大全</a></li> </body> </html> [/html] |
查閱了下,屬性如下:
white-space:nowrap;表示文本不會換行,在同一行繼續,知道遇到<br>標籤為止;
overflow:hidden;不顯示超過對象尺寸的內容,就是把超出的部分隱藏了;
text-overflow:ellipsis;當文字物件溢出是顯示...,當然也可是設定屬性為clip不顯示點點點;