一、文本溢出顯示省略號
當CSS文本內容過長,無法在對應的容器或者瀏覽器視口中完全展示時,我們可以採用CSS屬性text-overflow和overflow等方法,來實現以省略號結尾的文本顯示效果。
例如,我們可以通過如下代碼實現文本超出隱藏,省略號結尾的效果:
.text {
white-space: nowrap; /*禁止換行*/
overflow: hidden; /*隱藏溢出部分*/
text-overflow: ellipsis; /*結尾以省略號...顯示*/
}
二、CSS超過兩行部分為省略號
CSS文本內容超過兩行時,將部分文字省略並顯示省略號,是一種常見的展示方式。我們可以通過如下代碼實現:
.line-clamp-2 {
display: -webkit-box;
-webkit-line-clamp: 2; /*指定要顯示的行數*/
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
若CSS文本過長,則只會顯示前兩行文字,超過部分將展示省略號。
三、CSS超過三行部分為省略號
與超過兩行部分為省略號的方式類似,我們可以通過如下代碼實現CSS文本超過三行部分省略的效果:
.line-clamp-3 {
display: -webkit-box;
-webkit-line-clamp: 3; /*指定要顯示的行數*/
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
在此基礎上,我們可以通過調整line-clamp的值,指定要顯示的行數,以實現不同行數部分省略的效果。
四、CSS文本超出顯示省略號其他實現方法
除了以上提到的基於text-overflow和-webkit-line-clamp實現省略號的方法,還有以下其他實現方式:
1、使用JavaScript動態計算文本節點的實際高度,判斷是否需要添加省略號。
2、使用CSS3動畫實現點擊展開、收起省略號的效果。
3、使用canvas繪製文本,並通過JS計算文本寬度,超出部分用省略號代替。
五、總結
CSS超過兩行省略號是一種常見的前端處理方式,可以通過text-overflow和-webkit-line-clamp等CSS屬性實現。除此之外,還有其他實現方式,如JavaScript動態計算、CSS3動畫和canvas繪製等。在實際開發中,應根據需求選擇最合適的實現方式。
原創文章,作者:LQYU,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/150227.html