最近接到一個需求,要求商場導航裏的文字最多顯示兩行,超出兩行的省略號顯示,查一些資料,又根據本身的需求,改了不少,直接上代碼吧javascript
<html> <head> <style type="text/css"> .main{ width: 360px; border: 1px solid #ccc; overflow: hidden; } .child{ float: left; height: 40px; overflow: hidden; padding: 10px; background-color:blanchedalmond; margin: 10px; } .itemWrap{ display:table-cell; vertical-align: middle; text-align: center; height: 40px; } .item{ font-size: 12px; font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; overflow:hidden; width: 80px; text-overflow:ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-box-pack: center; -webkit-box-align: center; -webkit-line-clamp:2; overflow: hidden; } </style> </head> <body> <div class="main"> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據 </div> </div> </div> <div class="child"> <div class="itemWrap"> <div class="item"> 測試數據測試數據測試數據測試數據測試數據測試數據測試數據測試數據 </div> </div> </div> </div> </body> </html>
效果圖以下:css
child主要是控制padding和背景顏色,浮動,itemwrap主要是爲了垂直居中,item是真正的省略號實現;html
注:在less裏引入時,必定要記得不要編譯-webkit開頭的東西,加上less註釋就行了java
/*! autoprefixer: off */ web
-webkit-box-orient: vertical;less
/*! autoprefixer: on */測試