私たちの日常的な開発作業では、テキストのオーバーフロー、切り捨て、省略は、考慮する必要がある非常に一般的なビジネス シナリオの詳細です。 「一般的」に見えますが、実装にはさまざまな違いがあります。単一行の切り捨てですか、それとも複数行の切り捨てですか?複数行の切り捨て判定は行数で判断するのでしょうか、それとも高さで判断するのでしょうか?これらの問題の解決策は何でしょうか?それらの違いと、さまざまなシナリオへの適応性は何ですか? 一般的に、このようなテキスト切り捨て効果を実現する場合、次のことが期待されます。
上記の基準に基づいて、コーディングの練習を通じていくつかの答えを示します。 単一行テキストオーバーフロー省略記号 コア CSS ステートメント
アドバンテージ
欠点
適用可能なシナリオ
デモ <div class="demo"> ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。</div> .デモ{ 空白: ラップなし; オーバーフロー: 非表示; テキストオーバーフロー: 省略記号; } 効果例 複数行テキストのオーバーフロー省略記号 (-webkit-line-clamp) コア CSS ステートメント
アドバンテージ
欠点 一般的な互換性: -webkit-line-clamp プロパティは、WebKit カーネルを搭載したブラウザでのみサポートされます。 適用可能なシナリオ モバイルデバイスのブラウザはWebKitカーネルに基づいているため、モバイルページに適しています。 デモ <div class="demo"> ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 .デモ{ ディスプレイ: -webkit-box; オーバーフロー: 非表示; -webkit-line-clamp: 2; -webkit-box-orient: 垂直; } 効果例 複数行テキストのオーバーフロー省略記号(疑似要素 + 配置) コア CSS ステートメント
アドバンテージ
欠点
適用可能なシナリオ テキストコンテンツが多く、テキストコンテンツがコンテナを超えることは確実です デモ <div class="demo"> 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 寝床の前の月光 .デモ{ 位置: 相対的; 行の高さ: 18px; 高さ: 36px; オーバーフロー: 非表示; 単語区切り: 全区切り; } .demo::after { コンテンツ:"..."; フォントの太さ:太字; 位置:絶対; 下:0; 右:0; パディング:0 20px 1px 45px; /* 表示効果を高めるために */ 背景: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(white), color-stop(50%, white)); 背景: -moz-linear-gradient(右へ、rgba(255, 255, 255, 0)、白 50%、白); 背景: -o-linear-gradient(右へ、rgba(255, 255, 255, 0)、白 50%、白); 背景: -ms-linear-gradient(右へ、rgba(255, 255, 255, 0)、白 50%、白); 背景: linear-gradient(右へ、rgba(255, 255, 255, 0)、白 50%、白); } 効果例 複数行テキストのオーバーフロー省略記号 (Float) コア CSS ステートメント
アドバンテージ
欠点 省略記号は正しく表示されない場合があり、テキストの半分を覆ったり、テキストにぴったりと収まらなかったりすることがあります。 適用可能なシナリオ テキストコンテンツが多く、テキストコンテンツがコンテナを超えることは確実です デモ <div class="demo"> <div class="text"> ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 ベッドの前では月明かりが明るい。 </div> .デモ{ 高さ: 40px; 行の高さ: 20px; オーバーフロー: 非表示; } .デモ.テキスト{ フロート: 右; 左マージン: -5px; 幅: 100%; 単語区切り: 全区切り; } .demo::before { フロート: 左; 幅: 5px; コンテンツ: ""; 高さ: 40px; } .demo::after { フロート: 右; コンテンツ: "..."; 高さ: 20px; 行の高さ: 20px; 右パディング: 5px; テキスト配置: 右; 幅: 3em; 左マージン: -3em; 位置: 相対的; 左: 100%; 上: -20px; 右パディング: 5px; /* 表示効果を高めるために */ 背景: -webkit-gradient( リニア、 左上、 右上、 (rgba(255, 255, 255, 0))から、 (白)に、 カラーストップ(50%、白) ); 背景: -moz-linear-gradient( 右へ、 RGBA(255, 255, 255, 0)、 白 50%、 白 ); 背景: -o-線形グラデーション( 右へ、 RGBA(255, 255, 255, 0)、 白 50%、 白 ); 背景: -ms-linear-gradient( 右へ、 RGBA(255, 255, 255, 0)、 白 50%、 白 ); 背景: 線形グラデーション( 右へ、 RGBA(255, 255, 255, 0)、 白 50%、 白 ); } 効果例 これで、純粋な CSS で「テキストオーバーフロー、切り捨て、省略」を実装するいくつかの方法についての記事は終了です。CSS テキストオーバーフロー、切り捨て、省略に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援していただければ幸いです。 |
<<: JavaScript配列の一般的なメソッドの詳細な説明
>>: イラスト風ウェブサイトホームページデザイン ウェブサイトデザインの新トレンド
目次導入説明書実際の経験長所と短所総括する導入mysqlpump は mysqldump の派生です...
目次1. 関数バインディング2. パラメータと$eventを使用する3. 1つのイベントに複数の関数...
antd-mobileをインストールするグローバル輸入 npm をインストール antd-mobil...
1. はじめにこの記事では、Docker Swarm を使用して Nebula Graph クラスタ...
目次1. VMwareをインストールする1.1 VMwareworkstationsをダウンロードし...
序文一般的なビジネス シナリオでは、検索ボックスへの入力が完了した後、検索データを取得するために関連...
この記事では、JavaScriptシミュレーション計算機の具体的なコードを参考までに紹介します。具体...
問題の説明最近、ホストから次のカーネル情報が報告されました。 7月8日 10:47:42 cztes...
目次要約する要約する配列が変更されると、対応するデータを動的にロードしますシナリオ: 異なるコンポー...
目次1. イベントの流れ1. コンセプト2. DOMイベントフロー2. イベントの委任1. イベント...
目次一方向データフローの説明Vue2.x の使用法親コンポーネントに変更を通知するイベントのフォーム...
最近、MySQL の起動中にエラーが発生しました。エラー メッセージは次のとおりです。 エラー 20...
序文これまでは、パイプワークで割り当てた静的 IP は一時的なものであり、再起動すると無効になってい...
方法 1: readonly 属性を true に設定します。入力値=読み取り専用 readOnly...
Web デザイナーの頭の中には、仕事に関連する多くの知識が詰まっている必要があります。 CSS は、...