列表标题单行显示并用省略号代替省略溢出字体

我们想象中的新闻标题列表是这样的,井然有序

然而,并不是每个标题的字数都是这样合适,比如下面这个标题,字数一多它就自动换行了,将美观的样式打乱了。

然而,我们想要的是下面这种样式,每个标题只占一行,超出的部分的字体隐藏,并且用省略号代替。

若想实现只需要设置CSS的三个属性:

white-space:nowrap;    /*不换行*/
overflow:hidden;       /*溢出隐藏*/
text-overflow:ellipsis;/*将隐藏的文字变成...*/

注意每个标题一定要有宽度,不然overflow的属性没有效果。

### 使用 Element Plus 实现单行文本溢出并用省略号替代 为了实现单行文本溢出并用省略号替代的效果,在前端开发中通常会结合 CSS 和 HTML 来完成这一功能。对于基于 Vue.js 的组件库如 Element Plus,虽然其本身并没有直接提供专门针对此效果的属性设置,但是可以通过自定义样式轻松达成目标。 下面是一个简单的例子来展示如何利用 `el-tooltip` 组件配合原生 CSS 属性达到所需效果: ```html <template> <div class="text-container"> <!-- el-tooltip 提供了一个优雅的方式来处理鼠标悬停时显示完整内容 --> <el-tooltip :content="longText" placement="top-start"> <span class="ellipsis-text">{{ longText }}</span> </el-tooltip> </div> </template> <script setup lang="ts"> import { ref } from 'vue'; const longText = ref('这是一个非常长的文字串,当宽度足以完全展现全部字符的时候将会自动截断,并以省略号代替...'); </script> <style scoped> .text-container { width: 200px; /* 设置容器固定宽度 */ } .ellipsis-text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-block; max-width: 100%; } </style> ``` 上述代码片段通过组合使用 `white-space`, `overflow`, `text-overflow` 这些 CSS 属性实现了文字超出指定区域后的隐藏以及添加省略号的功能[^1]。 同时借助于 `el-tooltip` 可以为用户提供一种友好的交互方式去查看被裁剪掉的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值