css实现文本单行,多行缩略方法

1,单行文本缩略

在这里插入图片描述

overflow: hidden;				//超出内容隐藏
white-space: nowrap;			//文本不换行
text-overflow: ellipsis;		//文本超出内容用(...)代替

2,多行文本缩略(仅支持谷歌)

在这里插入图片描述

overflow:hidden;
text-overflow:ellipsis;
display: -webkit-box;				//创建盒子模型
-webkit-line-clamp: 2;				//规定显示的代码行数
/*! autoprefixer: off **/			//参考其他资料时,说这个会在代码环境下被忽略,虽然我没遇到,但是还是把解决方法加上去
-webkit-box-orient: vertical;		//autoprefixer 这个关键字可以免除被过滤的动作
/*! autoprefixer: on   **/			

火狐多行缩略方法

在这里插入图片描述

.item {
    position: relative;
    overflow:hidden;
    text-overflow:ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    /*! autoprefixer: off **/
    -webkit-box-orient: vertical;
    /*! autoprefixer: on   **/
    height: 3.6em;				//限定个高度值
    line-height: 26px;
}
.item:after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 10%;
    height: 1.8em;
    background: -moz-linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 50%);		/仅火狐下有效
}

文章参考1:https://blog.csdn.net/weixin_34403976/article/details/86154905
文章参考2:https://www.bbsmax.com/A/KE5Qje03dL/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是React实现多行缩略,包含展开和收起的代码示例: ```jsx import React, { useState } from "react"; const TextTruncate = ({ text, maxLines }) => { const [isExpanded, setIsExpanded] = useState(false); const toggleExpand = () => setIsExpanded(!isExpanded); const shouldTruncate = text.split("\n").length > maxLines; return ( <div> <div style={{ overflow: "hidden", display: "-webkit-box", WebkitBoxOrient: "vertical", WebkitLineClamp: maxLines, }} > {text} </div> {shouldTruncate && ( <button onClick={toggleExpand}> {isExpanded ? "收起" : "展开"} </button> )} </div> ); }; export default TextTruncate; ``` 在这个例子中,我们使用useState钩子来跟踪当前文本是否已展开。我们还定义了一个toggleExpand函数,用于切换展开和收起状态。 我们使用CSS属性来实现文本截断。我们设置overflow为hidden,使文本溢出隐藏,并使用-webkit-box属性来定义一个垂直方向上的弹性盒子。我们可以使用WebkitLineClamp属性来限制文本的行数。 最后,我们使用一个条件来显示展开和收起按钮,仅当文本超过指定的行数时。我们使用button元素来呈现按钮,并在单击时调用toggleExpand函数。 你可以使用以下代码片段来渲染TextTruncate组件: ```jsx <TextTruncate text={longText} maxLines={3} /> ``` 在这个例子中,我们将一个长文本字符串作为文本传递给TextTruncate组件,并将maxLines属性设置为3。这将限制文本的行数为3行,并在需要时显示展开和收起按钮。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值