通常、IE ブラウザでの CSS の互換性の問題を解決するために、フロート レイアウトが使用されます。たとえば、Taobao はフロート レイアウトを使用して実装します。 Taobao ページには、以下に示すようなレイアウトが表示されます。 このように均等に分布した画像のレイアウトを平均レイアウトと呼びます。では、このレイアウトはどのようにして実現されるのでしょうか? 生徒の中には、これは難しくないと考える人もいるかもしれません。親要素 div の幅を子要素の幅の合計と等しくなるように設定するだけです。 本当にそんなに簡単なのでしょうか?試してみましょう。 テスト 各子要素の幅を 100 px に設定し、合計 3 つの子要素があり、各子要素に 50 px の margin-right を指定すると、親要素の幅は 100x3+50x2=400 px になります。スタイルをいくつか設定してみましょう。 html および css コードは次のとおりです。 //HTML <div class="父クリアフィックス"> <div class="son"></div> <div class="son"></div> <div class="son"></div> </div> //CSS * { マージン: 0; パディング: 0; ボックスのサイズ: 境界線ボックス; } .clearfix::after { コンテンツ: ''; 表示: ブロック; クリア: 両方; } 。父親 { 幅: 400ピクセル; 高さ: 100px; マージン: 10px; 背景色: #d5a4cf; 境界線: 1px 黒一色; } .息子{ 境界線: 1px 黒一色; 背景色: #fff1ac; フロート: 左; 右マージン: 50px; 幅: 100ピクセル; 高さ: 100px; } 効果は以下のとおりです 最後の子要素が押し下げられていることがわかりました。なぜでしょうか?なぜかと聞かないでください。それが CSS だからです。 では、この問題をどう解決したらいいのでしょうか?親要素の 1px の境界線が影響しているという学生もいました。アウトラインに変更してみましょう。 それでもまだ機能しないことがわかりました。どうすればよいでしょうか?次に「ネガティブマージン」という手法を紹介します。 親要素と子要素の間に中間レイヤーを追加し、この div の margin-right を -50px に設定します。もう一度試してみましょう。 //HTML <div class="父クリアフィックス"> <div class="middle clearfix"> <div class="son"></div> <div class="son"></div> <div class="son"></div> </div> </div> //CSS * { マージン: 0; パディング: 0; ボックスのサイズ: 境界線ボックス; } .clearfix::after { コンテンツ: ''; 表示: ブロック; クリア: 両方; } 。父親 { 幅: 400ピクセル; 高さ: 100px; マージン: 10px; 背景色: #d5a4cf; アウトライン: 1px 黒 } .息子{ 境界線: 1px 黒一色; 背景色: #fff1ac; フロート: 左; 右マージン: 50px; 幅: 100ピクセル; 高さ: 100px; } 。真ん中 { 右マージン: -50px; } このとき、中央の div が右マージンを「拡張」して 3 つの子要素を「ラップ」し、平均的なレイアウトを実現していることがわかりました。 結論は 私たちはテストを通じて、平均的なレイアウトの問題に対する解決策を見つけました。それが皆様のお役に立てば幸いです。 CSS平均レイアウトの詳細については、123WORDPRESS.COMの他の関連記事にも注目してください。 |
>>: 優れたウェブサイトのコピーライティングと優れたユーザーエクスペリエンス
目次問題の説明Vueの動的コンポーネントとはアプリケーションシナリオの説明実装手順ステップ 1 (新...
背景すべては、WeChat 技術グループのクラスメートが「写真の主な色を取得する方法はあるか」と尋ね...
最近、要素テーブルを使用すると、並べ替えの問題によく遭遇します。単純な並べ替えであれば、要素の公式が...
私はプロジェクトを実行するために react を使い始めたばかりで、非常に未熟で完全な初心者です。私...
1. 宇宙のルールHTML コード内の空白は通常、ブラウザによって無視されます。 <p>...
背景このバグは滾動條占據空間ことで発生していました。いくつかの情報を確認して、ようやく解決しました。...
<br />Web ページに音楽を挿入する場合、サフィックスに応じて異なるコードを記述す...
1. 基本仕様(1)InnoDBストレージエンジンを使用する必要があります。解釈:トランザクション、...
この記事では、参考までに、シンプルなショッピングカートケースを実装するためのVueの具体的なコードを...
Linux バージョンに関する情報を表示および解釈するのは、見た目よりも少し複雑です。単純なバージョ...
必要な方はどなたでも参考にしてください。試してみて問題が見つかった場合は、メッセージを残してお知らせ...
目次手動展開1.アイデアを使ってSpring Bootプロジェクトを作成する2. プロジェクトをJa...
1. 公式MySQL Yumリポジトリをダウンロードしてインストールする 実行ファイル: mysql...
序文Dockerを使ってHadoopクラスタを起動するたびに、ネットワークカードの再バインド、IPの...
1. 準備LinuxシステムにTomcatをインストールし、デフォルトのポート8080を使用してTo...