固定幅の複数行要素でのクロスブラウザー テキスト オーバーフローの修正
制約のある div があるシナリオを考えてみましょう。幅と複数のテキスト行。オーバーフローしたテキストが省略記号 (...) で切り詰められるようにするにはどうすればよいですか?
jQuery を使用した複数行の省略記号
さまざまな jQuery プラグインがテキスト オーバーフローに対処するものもありますが、容量が大きいため、要件に合わせて特別に調整されたものを見つけるのは難しい場合があります。 jQuery を使用した基本的なアプローチは次のとおりです。
var $p = $('#fos p'); var divh = $('#fos').height(); while ($p.outerHeight() > divh) { $p.text(function (index, text) { return text.replace(/\W*\s(\S)*$/, '...'); }); }
このスクリプトは、高さが div と一致するまで、テキストから最後の単語を繰り返し削除します。 JavaScript が無効になっていても、切り詰められたテキストは視覚的に正しいままです。
サーバー側の最適化
このアプローチとサーバー側の切り捨てを組み合わせると、オーバーヘッドを最小限に抑えてパフォーマンスを向上させることができます。 .
注: このソリューションは出発点であり、特定の要件に基づいてさらに改良する必要がある場合があります。
以上がjQuery を使用して固定幅の複数行要素でクロスブラウザーのテキスト オーバーフローを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。