vue-文字塊收縮與展開功能


 

在設計圖中要求的效果為:

文字限制超過9行即隱藏,並顯示“展開”按鈕,點擊按鈕進行切換,控制文本全部展示和部分展示

在原本的實現過程中,使用了紅框內的判斷方式:

頁面代碼:

 

樣式則規定嵌套元素給一個死高度,通過對比來進行高度的修改

但是

發現打包以后,文字會出現被切割的情況,如下:

奇了怪了,又沒規定死寬度,咋了你還自己切自己呢?於是想盡辦法,都定位不到原因之后,發現

-webkit-box-orient: vertical;
這個屬性,他不生效
 
ok現在總算有點出路了,但是原來那個寫死高度的辦法,在部分機型上會出現有時候顯示半行文字的情況,也需要修改啊!
所以我決定,不管嵌套元素的高度,只通過文本規定顯示行數來展示收縮與顯示!
於是新的代碼為:

同時處理這個optimize-css-assets-webpack-plugin這個插件的問題:

但是這個注釋掉就css就沒有壓縮了,所以同時為了保證css的壓縮,繼續修改:

最后:

簡潔啊,好看啊!完美啊!文字也不切割了啊!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM