【问题标题】:Ruby Truncate method equivalent in CSSCSS 中等效的 Ruby Truncate 方法
【发布时间】:2017-11-11 14:39:38
【问题描述】:

对于特定数量的字符,CSS 中是否有与 Ruby truncate 方法等效的方法?

我一直在阅读有关组合不同 CSS 方法(例如 text-overflow)的文章:

Setting a max character length in css

但似乎没有直接的解决方案可以在特定数量的字符之后复制truncate 功能,例如:

<%= truncate(this.thing, length: 15, separator: '...') %>

【问题讨论】:

  • @Abhi 在那个答案中,文本在 93 个字符后被截断。只有当文本是等宽的 (codepen.io/anon/pen/bRELeb) 时它才能工作
  • 是的,文本只占一行。此外,如果文本在多行上,它将不起作用。
  • @fcalderan cmets 中的 codepen 看起来很有希望,所以我建议
  • @abhi 我已经在你的第一条评论之后插入了它

标签: html css ruby-on-rails ruby


【解决方案1】:

我确实找到了这个 css here:

white-space: nowrap; 
width: 15em; 
overflow: hidden;
text-overflow: ellipsis; 
border: 1px solid #000000;

使用现代浏览器,它似乎可以满足您的期望。

【讨论】:

  • 我认为这仅适用于等宽字体?因为 em 不会考虑不同的字符宽度。
  • 看多了还是少了一个字符真的很重要吗?在许多情况下,您没有足够的空间并且想要截断字符串。使用 rails 版本,您必须使用更少的字符才能确保它适合保留的空间。使用 css,当它不适合保留空间时,它总是会被截断。
  • 在这种特定情况下可能无关紧要,我不会反对答案,因为它可能满足 OP 的要求。我只是指出,这可能并不“完全”符合所声称的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-11
  • 2015-09-08
  • 1970-01-01
  • 2014-10-31
相关资源
最近更新 更多