CSS 是一種用于設計與格式化文檔內容的語言,它提供了一系列的屬性和規則,用于控制文字的樣式、位置、大小、顏色等。其中,溢出(overflow)是控制元素內部內容的顯示方式之一。
當元素內部內容溢出其指定的高度和寬度時,我們可以使用 overflow 屬性來控制其顯示方式。例如,將 overflow 屬性設置為 scroll,則會出現滾動條來顯示溢出的內容。不過,在一些情況下,我們可能希望不顯示全部的溢出內容,而是顯示一個類似 “點點點” 的省略符號,這時我們就可以使用 text-overflow 屬性來完成這個效果。
text-overflow 屬性是在 overflow 屬性的基礎上進行擴展的。它主要有三個取值:
text-overflow: clip; // 不顯示溢出內容,直接裁剪 text-overflow: ellipsis; // 以省略符號的形式顯示溢出內容 text-overflow: string; // 使用指定字符串來代替省略符號,默認為 “…”
其中,最常見的就是 ellipsis 取值。我們可以將 text-overflow 設置為 ellipsis,然后再配合 overflow 和 white-space 屬性來實現省略符號的效果。下面是一個例子:
.container { width: 100px; height: 14px; white-space: nowrap; // 不允許換行 overflow: hidden; text-overflow: ellipsis; } <div class="container">這是一段很長的文本內容,可能會溢出</div>
在上面的例子中,我們將一個寬度為 100px,高度為 14px 的容器設置為不允許換行,并隱藏溢出內容。然后,我們設置了 text-overflow 屬性為 ellipsis,這樣就會出現省略符號來代替溢出的內容。
需要注意的是,text-overflow 屬性只在一些特定的元素上起作用,比如塊級元素和表格單元格。但是,它并不適用于內聯元素或者絕對定位元素。此外,text-overflow 的效果也是受到字體大小、容器大小、行高等因素的影響的。