標籤:style http 使用 sp 問題 bs html ad ef
css屬性white-space
<p style="width: 300px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;">省略我吧 省略我吧省略我吧省略我吧省略我吧省略我吧省略我吧省略我吧省略我吧省略我吧</p>
測試瀏覽器: IE6/7/8/9、opera12.02、firefox15.0.1、chrome21.0.1180.89 m
1、text-overflow: ellipsis;
這裡的重點樣式是 text-overflow: ellipsis;
不過話說text-ellipsis是一個特殊的樣式,有關解釋是這樣的:text-overflow屬性僅是註解,當文本溢出時是否顯示省略標記。並不具備其它的樣式屬性定義。要實現溢出時產生省略符號的效果還須定義:強制文本在一行內顯示(white-space:nowrap)及溢出內容為隱藏(overflow:hidden),只有這樣才能實現溢出文本顯示省略符號的效果。
這裡面需要限定寬度、文字顯示在一行中(white-space:nowrap;)和使用隱藏屬性overflow。
網上給支援低版本的opera一個辦法,就是-o-text-overflow:ellipsis;
2.white-space屬性
normal 預設。空白會被瀏覽器忽略。
pre 空白會被瀏覽器保留。其行為方式類似 HTML 中的 <pre> 標籤。
nowrap 文本不會換行,文本會在在同一行上繼續,直到遇到 <br> 標籤為止。
pre-wrap 保留空白符序列,但是正常地進行換行。
pre-line 合并空白符序列,但是保留分行符號。
inherit 規定應該從父元素繼承 white-space 屬性的值。
Object.style.whiteSpace=normal|nowrap|pre
3.word-wrap
1.(IE瀏覽器)連續的英文字元和阿拉伯數字,使用word-wrap : break-word ;或者word-break:break-all;實現強制斷行
2.(Firefox瀏覽器)連續的英文字元和阿拉伯數位斷行,Firefox的所有版本的沒有解決這個問題,我們只有讓超出邊界的字元隱藏或者,給容器添加捲軸
.a{word-break:break-all; width:200px; overflow:auto;}
.(Firefox瀏覽器)使用 table-layout:fixed;強制table的寬度,內層td,th採用word- break : break-all;或者word-wrap : break-word ;換行,使用overflow:hidden;隱藏超出內容,這裡overflow:auto;無法起作用
css超出一行添加省略符號屬性:text-overflow和white-space