提问者:小点点

带有多行文本省略号的Flexbox


我一直在使用空格:不换行,文本溢出:省略号和溢出:隐藏的CSS属性为多行文本创建省略号截断。但是,这在使用弹性框时不起作用。

使用flex时,text-overflow:省略号似乎总是将flex项的高度截断为一行。

对于多行文本,是否可以使用flex和css省略号截断的组合?

<div className="flex-container">
  <div className="flex-item">
    <p>long multiline text that i would like to truncate</p>
  </div>
</div>

我可以让它在单行截断的情况下工作。手动设置高度与flex空格:nowrapp不起作用。


共1个答案

匿名用户

您可以使用此代码进行省略号的多行截断

.text-block-div {
  display: block;
  display: -webkit-box;
  max-width: 100%;
  height: 43px;
  margin: 0 auto;
  font-size: 14px;
  line-height: 1;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

您可以在这个div中使用class.text块div的文本,以获得省略号效果。

注意:省略号效果需要webkit,这意味着如果有人使用不支持webkit的浏览器查看它,那么他们将看不到……但文本仍将在正确的位置被截断,因此此效果仍然适用于所有主要浏览器。