当前位置: 首页 > 知识库问答 >
问题:

带有多行文本省略号的Flexbox

瞿文柏
2023-03-14

我一直在使用空格:不换行,文本溢出:省略号和溢出:隐藏的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个答案

充星腾
2023-03-14

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

.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的浏览器查看它,那么他们将看不到……但文本仍将在正确的位置被截断,因此此效果仍然适用于所有主要浏览器。

 类似资料:
  • 本文向大家介绍如何实现多行元素的文本省略号?相关面试题,主要包含被问及如何实现多行元素的文本省略号?时的应答技巧和注意事项,需要的朋友参考一下 参考回答:

  • 问题内容: 是否有解决方案,以div的最后一行在流体高度(20%)处添加省略号? 我在CSS中找到了该函数,但在我的情况下,行号取决于窗口大小。 问题答案: 如果要将省略号(…)应用于一行文本,CSS可以通过该属性使此操作变得容易。仍然有些棘手(由于所有要求,请参阅下文),但使之成为可能且可靠。 但是,如果要在多行文本上使用省略号(如此处的情况),那么不要指望有什么乐趣。CSS没有执行此操作的标准

  • 有没有办法在流体高度为20%的div中的最后一行添加省略号? 我在CSS中找到了函数,但在我的例子中,行号将取决于窗口大小。 我用这个例子来说明这个问题。https://jsfiddle.net/96knodm6/

  • 问题内容: 我有一条路径列表(由于缺少更好的词,也许面包屑痕迹可以更好地描述它们)。有些值太长而无法在其父项中显示,因此我正在使用。问题在于重要信息在右侧,因此我希望省略号出现在左侧。像这样的ASCII艺术: 请注意,第一行足够短,因此仍保持左对齐,而其他两行又太长,因此省略号出现在左侧。 我更喜欢仅CSS的解决方案,但是如果无法避免,JS很好。如果该解决方案仅适用于Firefox和Chrome,

  • 问题内容: 我知道您可以使用CSS规则组合来在溢出时(不超出父级的范围)使文本以省略号(…)结尾。 是否有可能(随意说,不)达到相同的效果,但让文本换行超过一行? 如您所见,当文本的宽度大于div的宽度时,文本以省略号结尾。但是,仍然有足够的空间用于文本换行并继续。这会被中断,以使省略号起作用。 有任何想法吗? PS:没有JS解决方案,如果可能的话,使用纯CSS。 问题答案: 我不确定您是否看过

  • 问题内容: 我需要在可调整大小的元素内的文本中间实现省略号()。这是可能的样子。所以, 变成 当元素延伸到文本的宽度时,我希望省略号消失。如何才能做到这一点? 问题答案: 在HTML中,将完整值放在自定义data- *属性中,例如 然后分配和事件侦听器的JavaScript函数,将读取原始数据属性,并将其放置在您的跨度标签。这是省略号功能的示例: 调整值,或者如有必要,对不同的对象将其设为动态。如