微信小程序-文字超出限制如何在末尾加省略号

本文介绍如何在微信小程序中实现文字超出时自动添加省略号,并展示如何使用条件渲染显示默认图片,确保用户体验。

微信小程序-文字超出限制如何在末尾加省略号

特意为了这一个功能点来记笔记。

当文字超出一行时会自动换行 那如何让文字不自动换行并在末尾加上省略号呢?

我查资料的时候搜到这个博客
http://blog.youkuaiyun.com/u010168409/article/details/54429678

原贴的答案是这样的

text {
    display: -webkit-box;
    word-break: break-all;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 32rpx;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2;
}

然后自己试验了一下 发现这样写就可以达到效果了

text{
    overflow:hidden; //超出一行文字自动隐藏
    text-overflow:ellipsis;//文字隐藏后添加省略号
    white-space:nowrap;  //强制不换行
    }

知识点二 在图片未能正确加载时 显示默认图片

用条件渲染 即wx:if,wx:elif,wx:else系列

eg1. 图片

<block wx:for="{{data}}">
<image wx:if="{{item.avatar == ''}}" class="avatar" src="/images/cinema.png"></image> 
  <image wx:else="{{item.avatar}}" class="avatar" src="{{item.avatar}}" background-size="cover"></image>
</block>

eg2. 文字 text、view标签是同样的效果

<block wx:for="{{data}}">
  <view wx:if="{{item.entity_name==null}}" class="label"></view>
  <view wx:else="{{item.entity_name}}" class="label">{{item.entity_name}}</view>
</block>
微信小程序中实现单行文本溢出显示省略号的效果,可以通过以下 CSS 样式来完成。这种效果通常用于防止文字溢出容器,并在文字过长时显示为省略号。 ### 单行文本溢出显示省略号的实现方法 #### WXML 结构 ```html <view class="text-ellipsis">这是一段可能会超出容器的文字内容</view> ``` #### WXSS 样式 ```css .text-ellipsis { display: block; /* 或 inline-block,根据需求 */ max-width: 500rpx; /* 设置容器的最大宽度 */ overflow: hidden; /* 超出部分隐藏 */ white-space: nowrap; /* 强制文本在一行内显示 */ text-overflow: ellipsis; /* 超出部分显示为省略号 */ } ``` ### 说明 - `display: block` 或 `inline-block`:确保容器可以限制宽度。 - `max-width`:定义容器的最大宽度,超出该宽度的文字将被隐藏或截断。 - `overflow: hidden`:隐藏超出容器范围的文字- `white-space: nowrap`:防止文字换行,强制在一行内显示。 - `text-overflow: ellipsis`:当文字溢出时,显示省略号(...)表示内容被截断。 ### 示例效果 如果容器的宽度不足以容纳全部文字,例如设置为 `500rpx`,而文字内容过长,最终效果会是文字在容器内显示为一行,并在末尾显示省略号。 #### 示例代码 ```html <view class="text-ellipsis">这是一段非常长的文字内容,可能会超出容器的宽度</view> ``` ```css .text-ellipsis { display: block; max-width: 500rpx; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } ``` ### 注意事项 - 确保容器的宽度是固定的,或者使用 `max-width` 来限制最大宽度,否则 `text-overflow: ellipsis` 可能不会生效。 - 如果容器的宽度是动态变化的,需要结合 JavaScript 或小程序逻辑动态调整样式。 ---
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值