单行、多行文本超出显示省略号

单行、多行文本超出显示省略号

1、单行文本省略

.ellipsis-line {
    
    
    border: 1px solid #f70505;
    padding: 8px;
    width: 400px;
    overflow: hidden;
    text-overflow: ellipsis; //文本溢出显示省略号
    white-space: nowrap; //文本不会换行
}

语法:

默认值 适用
clip;ellipsis clip 所有元素
属性 解释
clip 当对象内文本溢出时不显示省略标记(…),而是将溢出的部分裁切掉。
ellipsis 当对象内文本溢出时显示省略标记(…)。

注意:使用ellipsis的时候,必须配合overflow:hidden; white-space:nowrap;这三个样式共同使用才会有效果。

2、多行文本省略

直接用css属性-webkit-line-clamp:n;设置

在WebKit浏览器或移动端(绝大部分是WebKit内核的浏览器)的页面实现比较简单,可以直接使用WebKit的CSS扩展属性(WebKit是私有属性)-webkit-line-clamp ;注意:这是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中。

  • -webkit-line-clamp:n;用来限制在一个块元素显示的文本的行数。 为了实现该效果,它需要组合其他的WebKit属性。常见结合属性:
  • display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 。
  • -webkit-box-orient 必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 。
  • text-overflow: ellipsis;,可以用来多行文本的情况下,用省略号“…”隐藏超出范围的文本。

这个属性只合适WebKit浏览器或移动端(绝大部分是WebKit内核的)浏览器

.multi-line {
    
    
    border: 1px solid #f70505;
    width: 400px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

3、示例:

  render:(h,params)=> {
    
    
            return h('Tooltip', {
    
    
              props: {
    
    
                placement:'bottom',
                content: params.row.result,
                transfer: true,
                maxWidth: 800,
              }
            }, [
              h('span', {
    
    
                style: {
    
    
                  display: 'inline-block',
                  width: '100px',
                  overflow: 'hidden',
                  textOverflow: 'ellipsis',
                  whiteSpace: 'nowrap'
                },
              }, params.row.result)
            ])
          }

参考自:http://t.zoukankan.com/hellocd-p-text-ellipsis.html

猜你喜欢

转载自blog.csdn.net/zzzz121380/article/details/126163041