如何讓多行文本顯示省略號

一、使用CSS的text-overflow屬性實現省略號

在<style>標籤內,添加text-overflow屬性,設置overflow為hidden,同時設置white-space為nowrap,即可實現多行文本省略號的效果。

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

在HTML中,給需要加省略號的文本元素添加class=”ellipsis”即可。

二、使用JavaScript計算文本寬度實現省略號

如果要求實現更精確的省略號效果,可以使用JavaScript計算文本的寬度,根據寬度來截取文本並添加省略號。

首先,HTML結構如下:

<div id="ellipsis">
    <span id="text">這是一段要進行省略號處理的文本</span>
</div>

然後,在JavaScript中,計算文本的寬度,截取文本並添加省略號:

const ellipsis = document.getElementById('ellipsis');
const text = document.getElementById('text');
const textWidth = text.clientWidth;
const ellipsisWidth = ellipsis.clientWidth;

if (textWidth > ellipsisWidth) {
   const textContent = text.textContent;
   let newText = '';
   for (let i = 0; i < textContent.length; i++) {
       newText += textContent[i];
       if ((text.cloneNode(true)).textContent !== newText) {
           text.textContent = newText + '...';
           break;
       }
   }
}

三、更多技巧

1、使用CSS3的line-clamp屬性可以更方便地實現多行文本省略號效果。例如:

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

這裡設置了-webkit-line-clamp為3,即最多顯示3行文本,超過3行則自動省略號。

2、可以根據不同的需求,定製化省略號的樣式,例如顏色、字號、背景色等。需要注意的是,如果在:before或:after偽元素中添加省略號,需要注意偽元素的content屬性值是否為字符串,否則需要使用attr()函數來獲取元素的屬性值,例如:

.ellipsis:before {
    content: "\2026";  /*省略號字符*/
    color: red;
}

四、總結

通過使用CSS和JavaScript,我們可以方便地實現多行文本省略號效果。在實際項目中,我們需要根據具體的需求和效果要求來選擇使用哪種方法,以最佳的用戶體驗和代碼效率為目標。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/188939.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-29 07:51
下一篇 2024-11-29 07:59

相關推薦

  • CSS多行文本溢出顯示省略號

    一、基本概念 CSS多行文本溢出顯示省略號是一種常見的頁面排版技巧,通過設置CSS樣式,使元素內的文本內容超出指定的寬度或高度時,自動顯示省略號,從而提升頁面的可讀性和美觀性。實現…

    編程 2025-04-20
  • Latex省略號

    一、省略號使用場景 在論文、書籍等文本排版中,經常需要使用省略號。常見的使用場景有: 1、表示對話或引文中省略部分內容: \ldots 他說:「我認為這個問題應該這樣解決……」 2…

    編程 2025-02-15
  • CSS 超出顯示省略號

    在前端開發中,經常需要對一些過長的文本進行縮略顯示,這時候就需要用到 CSS 的超出顯示省略號的功能。本文將從多個方面對該功能做詳細的闡述。 1、基礎用法 CSS 的超出顯示省略號…

    編程 2025-02-05
  • 如何實現elementui超出後省略號

    在web開發中,我們經常遇到這種情況,當文本內容超出部分被省略號代替,以便更好的展示內容。本文將從多個方面詳細闡述如何實現elementui超出後省略號的效果。 一、使用CSS樣式…

    編程 2025-02-05
  • 如何優雅地處理文本超出2行顯示省略號 | 技巧分享

    在網頁開發中,我們常常需要對文本進行限制,以保證用戶界面的美觀性和良好的用戶體驗。如果文本內容過長,不做處理的話,會讓頁面顯示效果變得非常的雜亂無章。本文將會介紹一些優雅處理文本超…

    編程 2025-01-16
  • CSS文本超出就隱藏並且顯示省略號的實現方法

    CSS文本超出就隱藏並且顯示省略號是在開發網頁時很常見的需求,比如在列表頁中,當每行的文本內容過長時,超出顯示區域;再例如,當文本內容過多時,需截取部分內容顯示,並以省略號結尾。下…

    編程 2024-12-31
  • CSS超出兩行顯示省略號

    一、CSS超出顯示省略號 當文本長度超過所在容器的寬度時,CSS提供了文本溢出隱藏屬性來避免文本溢出容器。通過text-overflow屬性來設置文本顯示方式為省略號,具體有三個值…

    編程 2024-12-29
  • 如何使CSS文字自動顯示省略號?

    一、為什麼需要CSS文字自動顯示省略號? CSS文字自動顯示省略號是一種常見的需求,它可以在界面上優化顯示效果,避免因為文字過長而導致布局出現問題。比如在新聞列表、文章標題、搜索結…

    編程 2024-12-29
  • CSS超出顯示省略號

    一、鼠標移入顯示 在一些需要強調的地方,我們可以設置鼠標移入時顯示全部內容,以避免省略號的出現。我們可以藉助CSS中的: hover偽類來實現。例如,我們可以將一段長文字放在一個帶…

    編程 2024-12-24
  • 如何優化CSS文字,實現省略號效果

    CSS文字省略號效果是我們在網站和應用程序中應用廣泛的一種技術,它使得長文字塊的顯示更加簡潔和美觀。但是,缺乏正確的CSS優化技巧可能會導致排版混亂或者性能降低。在本文中,我們將從…

    編程 2024-12-24

發表回復

登錄後才能評論