1. 程式人生 > >CSS中span內容超出部分以...顯示

CSS中span內容超出部分以...顯示

使用text-overflow:ellipsis對溢位文字顯示省略號有兩個好處:
一是不用通過程式限定字數;
二是有利於SEO。需要使用對對溢位文字顯示省略號的通常是文章標題列表,這樣處理對搜尋引擎更友好,因為標題實際上並未被截字,而是侷限於寬度而未被顯示而已。

設定span的屬性為:

<style type="text/css">
    span{
        overflow: hidden; 
        text-overflow: ellipsis; 
        -o-text-overflow: ellipsis;
        white-space
:nowrap
; width:240px; height:24px; display:block; }
</style>

其中,
overflow: hidden和white-space: nowrap都是必須的否則不會顯示省略號;
-o-text-overflow: ellipsis針對Opera;
而寬度的設定主要是針對IE6;
該方法支援Internet Explorer, Safari, Chrome 和 Opera,但FF並不支援,不過可以通過Jquery來實現類似的效果。
下載這個Jquery外掛:jQuery ellipsis plugin
呼叫方法:

$(document).ready(function() {
    $('.ellipsis').ellipsis();
}
其次,溢位隱藏必須設定元素的寬或者高,因為你不確定寬或者高,也就不知道它超出什麼範圍才隱藏;
最後,因為只有塊級元素才能設定寬和高,而span是行內元素,要轉換成塊級元素用程式碼display:block。




overflow屬性介紹:

定義和用法

overflow 屬性規定當內容溢位元素框時發生的事情。

說明

這個屬性定義溢位元素內容區的內容會如何處理。如果值為 scroll,不論是否需要,使用者代理都會提供一種滾動機制。因此,有可能即使元素框中可以放下所有內容也會出現滾動條。

預設值: visible
繼承性: no
版本: CSS2
JavaScript 語法: object.style.overflow="scroll"

可能的值

描述
visible 預設值。內容不會被修剪,會呈現在元素框之外。
hidden 內容會被修剪,並且其餘內容是不可見的。
scroll 內容會被修剪,但是瀏覽器會顯示滾動條以便檢視其餘的內容。
auto 如果內容被修剪,則瀏覽器會顯示滾動條以便檢視其餘的內容。
inherit 規定應該從父元素繼承 overflow 屬性的值。

text-overflow屬性介紹:

定義和用法

text-overflow 屬性規定當文字溢位包含元素時發生的事情。

預設值: clip
繼承性: no
版本: CSS3
JavaScript 語法: object.style.textOverflow="ellipsis"

語法

text-overflow: clip|ellipsis|string;
描述 測試
clip 修剪文字。 測試
ellipsis 顯示省略符號來代表被修剪的文字。 測試
string 使用給定的字串來代表被修剪的文字。