1

如果有标题,我正在使用此代码显示标题

<%= @user.headline if @user.headline? %>

我将其限制为 100 个字符。如何在 50 个字符后打破这个标题并在下面显示破碎的部分?我打算让它们集中在两条线上。

例如:

如果这是超过 100 个字符的标题,那么我想像这样显示它

展示:

如果这是超过 100 个字符的标题,那么

我想这样显示

4

3 回答 3

3

word_wrap方法专门用于解决此问题。

但是,它会插入换行符,而不是在 HTML 中换行(例如将不同的行包含在它们自己的<p>标签中)。在仔细研究了 TextHelper 的word_wrap方法是如何实现的之后,我会将该功能作为辅助方法来实现。

于 2013-04-05T08:01:52.830 回答
3

您可以使用文本助手中的 word_wrap:

include ActionView::Helpers::TextHelper
# or in a controller
# helper :text

word_wrap(@user.headline, :line_width => 50)
于 2013-04-05T08:02:11.397 回答
0

您可以按如下方式断开字符串:

head_line = @user.headline.scan(/.{1,50}/)

在您的情况下,您可以使用word_wrap

word_wrap(@user.headline, :line_width => 50)
于 2013-04-05T07:59:34.673 回答