モバイル側では、フレックスレイアウトが非常に便利です。デバイスの幅に応じてコンテナの幅を自動的に調整できます。非常に便利で、ますます欠かせないものになっています。しかし、最近、プロジェクトに取り組んでいるときに問題を発見しました。 つまり、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 で写真をトリミングする方法をご存知ですか?
<base target=_blank> は、基本リンクのターゲット フレームを新しいペ...
今日は、開発でよく使われる、非常に便利な HTML タグをいくつかまとめてみたいと思います。これらの...
1.Docer CEをインストールして使用するこの記事では、CentOS 7 を例に Docker ...
JavaScriptは、参考のためにランダムな点呼Webページを作成します。具体的な内容は次のとお...
解決策1完全にアンインストールしてすべてのデータを削除します。まず、MySQLに関連するすべてのプロ...
バックグラウンド管理プロジェクトを行う際には、リッチテキストエディタがよく使用されます。ここでは、非...
今朝、私は Wampserver を使用してローカルの win7 マシン上に PHP 環境を構築し、...
最近、プロジェクトで nginx を使用し、バックエンドで Java を使用しました。バックエンドで...
ウェブページの自動更新: <head></head> の間に次のコードを追加...
質問: インデックスは作成されているのに、Like ファジー クエリがまだ遅いのはなぜですか?インデ...
目次1. Promiseとは何か2. 基本的な使い方3. Promiseメソッド3.1 Promis...
目次序文1. シングルユーザーモードでの一般的なバグ修正2. シングルユーザーモードでシステムパスワ...
Dockerインストール後のネットワークタイプ [root@insure updev]# docke...
予防1) 先頭にインタープリターを追加します: #!/bin/bash 2) 構文のインデントに 4...
今日 Docker コンテナを作成したとき、誤ってイメージの名前を間違って入力しました。その結果、コ...