單行文本溢出省略號導致背景色多余的解決方案
在css中,使用text-overflow: ellipsis處理單行文本溢出時,如果文本帶有背景色,常常會出現(xiàn)最后一個字符的背景色殘留問題。這是因為text-overflow: ellipsis作用于行內元素,而背景色應用于文本元素本身,導致截斷后背景色仍然可見。
下圖所示為問題示例:
以下為問題的CSS和html代碼:
.oneline { width: 640rpx; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text { background-color: #999999; padding: 4rpx 8rpx; margin-right: 12rpx; } }
<view class="oneline"><text wx:for="{{flavorsarr}}" wx:key="index">{{item.label}}</text></view>
解決方法是將text元素的顯示方式修改為inline-block。inline-block元素可以作為一個整體塊處理,避免了單純行內元素截斷帶來的背景色殘留問題。
修改后的CSS代碼如下:
.oneline { width: 640rpx; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text { display: inline-block; /* 此處修改為 inline-block */ background-color: #999999; padding: 4rpx 8rpx; margin-right: 12rpx; } }
通過將text元素設置為inline-block,文本截斷將基于整個元素進行,從而有效避免了多余背景色的出現(xiàn),確保了文本溢出省略號的視覺效果更佳。
? 版權聲明
文章版權歸作者所有,未經(jīng)允許請勿轉載。
THE END