2

ページに表示しているユーザー入力テキストがあり、固定幅に収まるように適切に切り詰める必要があります。Rails には、文字列を切り捨てたり、省略テキストを次のように指定したりするための便利なヘルパーが組み込まれています。

truncate(post.title, :length=>50, :omission=>link_to("...",post))

または私はそれをそのようにcssすることができますが、どちらも満足のいくものではありません. 一部のテキストが切り捨てられた場合に、省略記号を元のテキスト/全文にリンクさせ、レンダリング時に文字が占める実際のスペースに対して切り捨てを機能させたい (固定幅を使用せずに)フォント)、文字数に関してではありません。

それで。切り捨てテキストに任意の html 文字列を使用するための css バージョンの修正はありますか? または、切り捨て時に文字列が占めるスペースをレールが伝える方法はありますか? テキストを切り詰めるための Rails ヘルパーが組み込まれているため、人々が抱えている問題のようですが、これらの人々はすべて固定幅フォントを使用していますか?

4

1 に答える 1

2

レンダリングされるまで、レンダリングの幅を知る方法はありません。各種ブラウザ・端末・フォントの有無・設定により異なります。

唯一の解決策は、javascript を使用して幅を計算し、マークアップを変更したり、楕円リンクを生成したりすることです。

ここでのいくつかの回答に関連する多くの事柄: JavaScript を使用してテキスト幅を計算する

この特定の回答を更新すると、…が追加されます: https://stackoverflow.com/a/3140086/168143

于 2012-08-21T00:33:21.927 に答える