您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關css多行文本溢出時出現省略號的實現,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
1. css
tip:只兼容chrome內核的瀏覽器。ff不支持。
.box { overflow: hidden; /* 溢出時不顯示溢出的內容 */ text-overflow: ellipsis; /* 發生溢出時使用省略號代替 */ display: -webkit-box; /* chrome瀏覽器的私有屬性。顯示為box。 */ -webkit-box-orient: vertical; /* 垂直排列元素 */ -webkit-line-clamp: 2; /* 顯示多少行 */ }
延展
word-wrap
關鍵字 | 描述 | 默認值 | 值 |
---|---|---|---|
word-wrap | 規定單詞換行的條件 | normal, 在單詞斷字點處換行。 | break-word,在單詞內換行。 |
overflow-wrap,在css3時由word-wrap改為overflow-wrap |
text-overflow
關鍵字 | 描述 | 默認值 | 值 |
---|---|---|---|
test-overflow | 超出盒子的文本如何顯示 | clip, 修剪文本。 ellipsis, 顯示省略號。 string, 顯示指定的文本。 |
white-space
關鍵字 | 描述 | 默認值 | 值 |
---|---|---|---|
white-space | 對待空白的方法和是否換行 | normal,空白會被瀏覽器忽略。 | pre, 保留空白。nowrap, 文本不換行。pre-wrap, 保留空白,正常換行。pre-line,合并空白,保留換行。 |
box-orient
這個屬性還沒有被瀏覽器支持。需要使用各自瀏覽器的私有屬性。
關鍵字 | 描述 | 默認值 | 值 |
---|---|---|---|
box-orient | 子元素如何排序 | inline-axis,子元素沿著內聯坐標軸(映射到橫向)。 | horizontal, 指定子元素在一個水平線上從左到右排列。vertical, 從頂部向底部垂直排列子元素。block-axis, 子元素沿著塊坐標軸(映射到垂直)。inherit,繼承父元素。 |
line-clamp
只有chrome內核的瀏覽器支持自己的私有屬性。
顯示多少行塊級元素。
2. js
使用js控制溢出文本如何顯示的方法有很多。這里推薦一個腳本文件:ellipsis.js
ellipsis.js
名稱 | 鏈接 |
---|---|
ellipsis 鏈接 | https://www.jsdelivr.com/package/npm/ellipsis.js |
ellipsis | https://cdn.jsdelivr.net/npm/ellipsis.js@0.1.3/ellipsis.js |
ellipsis git | https://github.com/glinford/ellipsis.js |
使用方法。
1、 引入腳本文件
<script src="https://cdn.jsdelivr.net/npm/ellipsis.js@0.1.3/ellipsis.js"></script>
2、 使用
var ell = Ellipsis({ lines: 3 }) var ele = document.getElementsByClassName('test') ell.add(ele)
延展
它還有一些配置項。若不配置則使用默認值。
{ ellipsis: '...', // 默認顯示的替代文本 debounce: 0, // 延遲多長時間后執行 responsive: true, // 是否有窗口大小改變時執行 className: '.clamp', // 默認操作具有這個類的元素。 lines: 2, // 默認只出現2行元素。 portrait: null, // 默認不改變,如果你想要在豎屏模式下有不同的行數, break_word: true // 默認截斷單詞。 }
關于css多行文本溢出時出現省略號的實現就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。