這篇文章主要介紹了css讓文本溢出部分顯示省略號的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)若羌,10余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575當(dāng)我們在進行網(wǎng)頁前端開發(fā)的時候,一般獲取文章標(biāo)題,然后一行一行的顯示。但是當(dāng)標(biāo)題過長的時候,就會造成換行顯示。還有顯示部分文本信息時,如果全部顯示就過于繁瑣,會帶來不會的網(wǎng)頁體驗感。雖然我們可以使用overflow:hidden將超過寬度的字符隱藏掉。但是結(jié)尾看起來總會讓人覺得有點僵硬。而且也不利于讓用戶知道后面還有沒顯示完的字符。最好的方法,就是將多余的字符用省略號來代替。
本章我們就給大家詳細介紹CSS如何使文本溢出部分顯示省略號的方法。希望對大家有所幫助。
一:單行文本溢出顯示省略號...(多為標(biāo)題的超出部分顯示省略號...)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>CSS如何使文本溢出部分顯示省略號?單行超出</title> <style> *{margin: 0px;padding: 0px;} .box{width: 300px;height: 500px;margin: 50px auto;} .overflow{ width:220px; overflow:hidden; white-space: nowrap; text-overflow: ellipsis; -o-text-overflow:ellipsis; } </style> </head> <body> <div class="box"> <p> css 實現(xiàn)單行文本超出長度顯示省略號 </p> <p class="overflow"> css 實現(xiàn)單行文本超出長度顯示省略號 </p> </div> </body> </html>
以上代碼的效果圖如下:
其中,white-space:nowrap;表示文本不會換行,在同一行繼續(xù),知道遇到標(biāo)簽為止;
overflow:hidden;不顯示超過對象尺寸的內(nèi)容,就是把超出的部分隱藏了;
text-overflow:ellipsis;當(dāng)文本對象溢出是顯示...,當(dāng)然也可是設(shè)置屬性為clip不顯示點點點;
-o-text-overflow:為了兼容opera瀏覽器;
二:多行文本溢出顯示省略號...
1.直接用css屬性設(shè)置(只有-webkit內(nèi)核才有作用)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>CSS如何使文本溢出部分顯示省略號?多行超出</title> <style> *{margin: 0px;padding: 0px;} .box{ width: 280px; height: 62px; margin: 50px auto; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; } </style> </head> <body> <div class="box"> css 實現(xiàn)多行文本超出長度顯示省略號,css 實現(xiàn)多行文本超出長度顯示省略號, css 實現(xiàn)多行文本超出長度顯示省略號 </div> </body> </html>
以上代碼的效果圖如下:
其中,移動端瀏覽器絕大部分是WebKit內(nèi)核的,所以該方法適用于移動端;
-webkit-line-clamp 用來限制在一個塊元素顯示的文本的行數(shù),這是一個不規(guī)范的屬性(unsupported WebKit property),它沒有出現(xiàn)在 CSS 規(guī)范草案中;
display: -webkit-box 將對象作為彈性伸縮盒子模型顯示 ;
-webkit-box-orient 設(shè)置或檢索伸縮盒對象的子元素的排列方式 ;
text-overflow: ellipsis 以用來多行文本的情況下,用省略號“…”隱藏超出范圍的文本。
2.利用偽類
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>CSS如何使文本溢出部分顯示省略號?多行超出</title> <style> *{margin: 0px;padding: 0px;} .box{ width: 280px; height: 62px; margin: 50px auto; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; } p{position: relative; line-height: 20px; max-height: 40px;overflow: hidden;} p::after{ content: "..."; position: absolute; bottom: 0; right: 0; padding-left: 40px; background: -webkit-linear-gradient(left, transparent, #fff 55%); background: -o-linear-gradient(right, transparent, #fff 55%); background: -moz-linear-gradient(right, transparent, #fff 55%); background: linear-gradient(to right, transparent, #fff 55%); } </style> </head> <body> <div class="box"> <p> css 實現(xiàn)多行文本超出長度顯示省略號, css 實現(xiàn)多行文本超出長度顯示省略號, css 實現(xiàn)多行文本超出長度顯示省略號 </p> </div> </body> </html>
以上代碼的效果圖如下:
該方法適用范圍廣,但文字未超出行的情況下也會出現(xiàn)省略號,可結(jié)合js優(yōu)化該方法。
將height設(shè)置為line-height的整數(shù)倍,防止超出的文字露出。給p::after添加漸變背景可避免文字只顯示一半。由于ie6-7不顯示content內(nèi)容,所以要添加標(biāo)簽兼容ie6-7(如:<span>…<span/>);兼容ie8需要將::after替換成:after。
3.利用絕對定位和padding;(跨瀏覽器解決方案)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>CSS如何使文本溢出部分顯示省略號?多行超出</title> <style> *{margin: 0px;padding: 0px;} .box{width: 300px;height: 500px;margin: 50px auto;} .con{ position: relative; height: 40px; width: 250px; line-height: 20px; overflow: hidden; padding-right: 12px; } .t{ position: absolute; right: 0; bottom: 0; } </style> </head> <body> <div class="box"> <p class="con"> css 實現(xiàn)多行文本超出長度顯示省略號, css 實現(xiàn)多行文本超出長度顯示省略號, css 實現(xiàn)多行文本超出長度顯示省略號。 <span class="t">...</span> </p> </div> </body> </html>
以上代碼的效果圖:
這個方法的原理是:首先在包含文字的元素里,嵌入一個<span>...</span>,然后在包含文字的元素右側(cè)留出省略號...的位置(padding-right),最后利用絕對定位將省略號...定位至右側(cè)的padding-right區(qū)域(右下角)。
感謝你能夠認真閱讀完這篇文章,希望小編分享css讓文本溢出部分顯示省略號的方法內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司,關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司,詳細的解決方法等著你來學(xué)習(xí)!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、網(wǎng)站設(shè)計器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁名稱:css讓文本溢出部分顯示省略號的方法-創(chuàng)新互聯(lián)
標(biāo)題來源:http://www.rwnh.cn/article10/dhhcgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、定制開發(fā)、企業(yè)網(wǎng)站制作、網(wǎng)站導(dǎo)航、網(wǎng)站收錄、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容