首頁 > web前端 > css教學 > 主體

css實作文字溢出省略號的四種方法(附程式碼)

不言
發布: 2018-10-15 14:54:51
轉載
3721 人瀏覽過

這篇文章帶給大家的內容是關於css實作文字溢出省略號的四種方法(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

在專案中有涉及實現一行或第幾行後加省略號,在實現第幾行後加省略號的時候,使用的是-webkit-line-clamp、-webkit-box-orient屬性,會出現webpack打包-webkit-box-orient屬性被忽略的情況,這裡記錄下

#1.單行實作文字省略號

/* 这里要显示的设置宽度 */
overflow: hidden;
white-space: nowrap;
/* 文字超出宽度则显示ellipsis省略号 */
text-overflow: ellipsis;
width: 100%;
登入後複製

css實作文字溢出省略號的四種方法(附程式碼)

#2.第幾行實作文字省略號

display: -webkit-box;
-webkit-box-orient: vertical;  /* 设置方向 */
-webkit-line-clamp: 2;  /* 设置超过为省略号的行数 */
overflow: hidden;
登入後複製
  • 使用webpack打包工具時,會忽略這個-webkit-box- orient屬性,這裡修改成下面的寫法就可以了

display: -webkit-box; 
overflow: hidden;
/* autoprefixer: off */
-webkit-box-orient: vertical;
/* autoprefixer: on */
-webkit-line-clamp: 8;
text-overflow: ellipsis;
登入後複製

#3.用js實作字數後加上省略號

if (title.length > 26) {
  title = title.substring(0, 27) + "...";
}
登入後複製

# 4.換行word-break和word-wrap

  • white-space:normal(自動換行),當寫入的文字超過定義的寬度後會自動換行,但當寫入的資料是一堆沒有空格的字元或字母或數字時,超過容器的寬度時就會把容器撐大,不換行

  • ##這時可以用:word -break:break-all;word-wrap:break-word來解決

  • word-break:break-all在超過容器寬度時,若有一個單字很長,則會將單字截斷,分開寫

  • word-wrap:break-word在超過容器寬度時,若有一個單字很長,則會將單字放到下一行,而不對單字進行截斷

word-break : normal | break-all | keep-all

normal :允許在字內換行
break-all : 允許在單字內換行
keep-all : 只能在半角空格或連字符處換行。

word-wrap : normal | break-word
normal : 允許內容頂開指定的容器邊界
break-word : 內容將在邊界內換行。如果需要,詞內換行(word-break)也會發生

以上是css實作文字溢出省略號的四種方法(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板