web前端技術分享:多行文字溢位問題解決方案

千鋒武漢發表於2021-04-20

      同學們在前端開發過程中可能會遇到需要將多行文字溢位部分隱藏並替換為省略號的情況,這裡小千就來給大家介紹一下解決方案。

1

      單行文字溢位及省略

      眾所周知,在CSS3中單行文字省略一般使用text-overflow實現: text-overflow:ellipsis;

      此屬性僅當文字溢位時是顯示省略標記,並不具備其它的樣式屬性定義,要實現溢位時產生省略號的效果還需定義以下屬性:

      容器寬度: width:value;

      強制文字在一行內顯示: white-space:nowrap;

      溢位內容為隱藏: overflow:hidden;

      溢位文字顯示省略號: text-overflow:ellipsis;

      可惜這個屬性只支援單行文字溢位顯示省略號,並不支援多行文字。

      多行文字溢位省略的幾種方法

      WebKit的一個CSS擴充套件屬性可以限制在一個塊元素中顯示的文字的行數,它是一個不規範的屬性(unsupported WebKit property),沒有出現在CSS規範草案中。

      -webkit-line-clamp:value;

      該屬性實現溢位省略效果還需要結合其他的屬性:display: -webkit-box;

      必須結合的屬性,將物件作為彈性伸縮盒子模型顯示:-webkit-box-orient:vertical;

      必須結合的屬性,設定或檢索伸縮盒物件的子元素的排列方式,此時便可以結合:text-overflow:ellipsis;實現多行文字省略。

2

      相容寫法

      把包含省略號的元素的定位在最後一行上,也能實現一個多行文字省略,沒有花裡胡哨的東西,只要調得準,基本可以相容大部分瀏覽器,說的就是IE。(doge)

3

      以上就是多行文字溢位問題的解決方案介紹了,同學們留意一下最後的相容寫法,相容問題是最容易被忽略的。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2768836/,如需轉載,請註明出處,否則將追究法律責任。

相關文章