モバイル側では、フレックスレイアウトが非常に便利です。デバイスの幅に応じてコンテナの幅を自動的に調整できます。非常に便利で、ますます欠かせないものになっています。しかし、最近、プロジェクトに取り組んでいるときに問題を発見しました。 つまり、flex:1 が設定されたコンテナーでは、テキストが非常に長い場合、テキストは設定された動的な残りのスペースに留まらず、コンテナーを超えてしまいます。実際のプロジェクトは非常に複雑なので説明するのは難しいので、ここでは問題を次のように簡略化します。 基本的に、フレックス レイアウトのメイン コンテナー、左側に固定の幅と高さのロゴ、右側に動的な幅のコンテンツがあります。 <div class="main"> <img alt="" class="logo" src="pic.jpg"> <div class="content"> <h4 class="name">名前</h4> <p class="info">情報</p> <p class="notice">これは通知コンテンツです。</p> </div> </div> 。主要 { ディスプレイ: フレックス; } .ロゴ { 幅: 100ピクセル; 高さ: 100px; マージン: 10px; } 。コンテンツ { フレックス: 1; } .コンテンツ > * { 空白: ラップなし; オーバーフロー: 非表示; テキストオーバーフロー: 省略記号; } .notice は非常に長くなる可能性があり、一部のデバイスでは非表示にする必要があります。つまり、折り返されず、省略記号... がマークとして残ります。 ここでは、text-overflow: ellipsis が機能せず、省略記号がまったく表示されないことがわかります。また、nowrap が設定されているため、テキストがコンテンツを拡大し、コンテンツが画面を超えてしまうことがわかります。したがって、この問題を解決する必要があります。 親要素 .content の flex: 1 をキャンセルしようとしましたが、機能しませんでした。 そのため、フレックスレイアウトの問題であると推測され、さらに省略記号によって親要素の幅を制限する必要があるのではないかと推測されます。 親要素 .content に width: 100% を設定しようとしても機能しませんが、width: 0 を設定すると機能します。今すぐ: 。コンテンツ { フレックス: 1; 幅: 0; } 幅が設定されていない場合、.content は子ノードによって無限に拡張される可能性があります。そのため、.notice には常にすべてのテキストを 1 行に表示するのに十分な幅があり、切り捨て効果はトリガーされません。効果をテストする別の方法があります: 。コンテンツ { フレックス: 1; オーバーフロー: 非表示; } 上記の 2 つの方法では、目的の効果が得られます。つまり、コンテンツが flex 1 に設定されている場合、親コンテナーの残りの幅が動的に取得され、独自の子要素によって引き伸ばされることはありません。 テストの結果、次のメソッドは無効です。 html および body 要素に max-width を設定すると、ページ幅が強制されるようです。 フレックスレイアウトでコンテナ内にコンテンツを保持する方法についての記事はこれで終わりです。フレックスレイアウトでコンテナ内にコンテンツを保持する方法の詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: ORM モデル フレームワークを使用して MySQL データベースを操作する方法
>>: vue-cropper を使用して vue で写真をトリミングする方法をご存知ですか?
ペーパーレスの世界はまだ到来していませんが、書類や写真をスキャンすることで紙をなくす人が増えています...
nginx トラフィック制御レート制限は非常に便利ですが、Nginx では誤解され、誤って設定される...
数十 MB 程度の小さいものから 1G 以上の大きいものまで、ビデオ ファイルなどのファイルのアップ...
背景最近、複数のプロジェクトを展開する際に、1 つのドメイン名で複数のプロジェクトにアクセスする方法...
正規表現を使用してIEブラウザのバージョンを判別するIEブラウザかどうか確認するif (docume...
CSS3を使用して、Googleログインページと同様の入力ボックスをアニメーション化します。効果1 ...
UNIONの使用ほとんどの SQL クエリは、1 つ以上のテーブルからデータを返す単一の SELEC...
以前、Markdown をレンダリングするときに、mavonEditor のプレビュー モードを使用...
目次準備する5つの武器…のためにオブジェクト.キーオブジェクト.getOwnPropertyName...
次のコードを index.html などのデフォルトのホームページ ファイルとして保存し、ルート デ...
この記事は主に、MySQLを再インストールする際のクリーンでないアンインストールのさまざまな問題をま...
デザイナーは独自のフォント ライブラリを持っているため、プロジェクトの設計時にすぐに使用できます。今...
公式、電子商取引、ソーシャル ネットワーキング、個人のいずれの Web サイトでも、訪問者に貴重な時...
関連記事: CentOS7でyumを使用してDockerをインストールするDockerを使ってWin...
序文場合によっては、データベースのイントラネット アドレスしか知らず、イントラネット経由で接続できな...