重要でない 1. フレックスファミリー flex には多くのプロパティがありますが、よく使用されるものは次のとおりです。 。容器 { ディスプレイ: フレックス; } .コンテナ > .left { フレックス: 1; } .コンテナ > .right { フレックス: 1; } これにより、左右均等に分割されたレイアウトを簡単に実現できます。 問題を引き起こす例を見てみましょう。 <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8" /> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0" /> <meta http-equiv="X-UA-compatible" content="ie=edge" /> <title>ドキュメント</title> <スタイル> div { パディング: 5px; 境界線: 1px 実線 #ccc; } .効果なし{ アイテムの位置を中央揃えにします。 マージン: 100px; 幅: 200ピクセル; 色: #999; } .no-effect > div:first-of-type { 右マージン: 10px; } p { 色: 赤; } .ラップなし{ オーバーフロー: 非表示; 空白: ラップなし; テキストオーバーフロー: 省略記号; } </スタイル> </head> <本文> <div style="display: flex;" class="no-effect"> <div style="flex: 0 0 80px">私は背が低いです</div> <div style="flex: auto"> <p class="no-wrap">私はとても長いです、冗談ではなく、どこまでも伸びます</p> </div> </div> </本文> </html> 望む効果: しかし実際の効果は次の通りです。 なぜこのようなことが起こるのでしょうか? 2. フレックスベースが邪魔になる
フレックス成長: 1; フレックスシュリンク: 1; flex-basis: 自動; 左の div は拡大も縮小もせず、幅は 80 ピクセルに固定されています。右の div は残りの幅 (200 ピクセル - 80 ピクセル = 120 ピクセル) を自動的に埋めますが、実際の効果は 120 ピクセルをはるかに超えます。これは、flex-basis が auto の場合の計算によるものです。 flex-basis: autoの履歴を見てみましょう:
したがって、 このように、内部 共通要素: 3. 解決策 原因が分かれば、適切な治療法を処方することができます。
3 つの解決策を紹介したので、最初の 2 つがなぜ解決できるのかについて説明しましょう。 1つ目は非常にシンプルです。幅は0に設定されていますが、 では、2番目はどうでしょうか? 2 番目のケースはより複雑です。min min(max(推奨最小幅, 使用可能な幅), 推奨幅) 大人向けの言葉に翻訳:
縮小幅 = min(max(最小幅、使用可能な幅)、推奨幅) 計算してみましょう:
計算により、次のようになります。 最大値(0, 272) = 272 最小値(272, 98) = 98 したがって、最終的な幅は残りの 98px になります。手動で 要約する CSS は私たちが思っているほど簡単に使えるわけではなく、従うべきルールはありますが、それを見つけるプロセスは少し複雑です... 理解できないものに遭遇した場合は、それがどのように生まれ、何をするのかについて詳しく読むと、解決の考え方が理解できます。 |
<<: システムメンテナンスページにリダイレクトするように nginx を設定する
退屈していたので、突然角丸四角形の実装を思いつきました。しかし、私たちはこの話題についてあまりにも長...
最近、プロジェクトでは kubernetes (以下、k8s と表記、k と s の間には 8 つの...
著者は1年以上マイクロフロントエンドプロジェクトに取り組んできました。チームは10個のマイクロアプリ...
以前、私は自分で WordPress を構築していましたが、当時はサードパーティの仮想ホストを使用し...
テーブルページを作成するときに、td に設定された幅が無効になることがあります。td の幅は常に内部...
1. Vimの公式ウェブサイトにアクセスして、オペレーティングシステムに適した実行ファイルをダウンロ...
Web ページを作成する過程では、<h1>、<h2>、<h3> ...
1. Alipay方式: Alipay メソッド: Alipay をクリックして支払い、バックエンド...
公式ドキュメント: https://dev.mysql.com/doc/refman/5.7/en/...
CSS変数の知識を使って、追加したコードとコメントを直接投稿します <!DOCTYPE htm...
この記事では、ネイティブ JS を使用して実装された実用的な Web ナビゲーション バー効果を紹介...
目次1. ルートナビゲーション2. 履歴状態管理API (1)ハッシュチェンジイベント(2)ポップス...
目次1. オブジェクトメソッドを定義する2. プロトタイプメソッドを定義する3. イベントコールバッ...
目次解決された主な問題1. バックエンドから返され、バックエンドに送信されるデータは、次の形式になり...
導入最近、Docker の ARM バージョンがあることを知りました。 hub.docker.com...