通常、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の他の関連記事にも注目してください。 |
>>: 優れたウェブサイトのコピーライティングと優れたユーザーエクスペリエンス
実行中のコンテナに入る # コンテナに入り、新しいターミナルを開きます# docker exec -...
序文多くの Web アプリケーションは、リレーショナル データベース管理システム (RDBMS) に...
序文最近、フロントエンドの知識をまとめており、いくつかのインタビューにも参加しました。インタビュー中...
1. HTML部分 <Col span="2">ファイルをアップロー...
序文ご存知のとおり、ブラウザの相同性戦略とクロスドメイン方式も、フロントエンド面接で頻繁に遭遇する問...
HTML は Hypertext Markup Language の略です。現在、ほとんどの Web...
この要件を受け取ったとき、Baidu は、CSS リンクの置き換え、className の変更、le...
目次1. Vue2との比較1. Vue3の新機能2. Vue2とVue3の応答原理の比較3. 配列の...
目次概要Vuex の 4 つの主要オブジェクト状態の使用突然変異の使用ゲッターの使用アクションの使用...
この記事ではMySQL 8.0.15のインストールと設定方法を参考までに記録します。具体的な内容は以...
問題点: docker run に -v パラメータを追加すると、コンテナは常に再起動状態になります...
さまざまなソースからデータを集約することで、中央倉庫を作成できます。データ ウェアハウスは、ビジネス...
成果を達成するまずHTMLを使って基本的なフレームワークを構築します <本文> <...
以前、カスタム関数を使用して MySQL でツリー構造を再帰的にクエリする方法についての記事を書きま...