CCS におけるマージン: トップ崩壊問題を解決する

CCS におけるマージン: トップ崩壊問題を解決する

HTML 構造は次のとおりです。

CCS 構造は次のとおりです。

ページ効果図は次のとおりです。

ここで、子要素に右に 50 ピクセル、下に 50 ピクセルが明確に設定されていることがわかりますが、ページに表示される効果は右に移動しているだけで、下には移動していません。

一般的に、 margin要素の外側の余白を設定するために使用されます。通常、 margin値を設定するときは、親要素をブラウザに対して相対的に配置し、子要素を親要素に対して相対的に配置する必要がありま す。

margin-top: 50px ですが、ページには効果がなく、マージンが失われていることを意味します。

では、マージン崩壊とは何でしょうか?

子要素にmargin-top: 50px;を設定した場合、内部のボックスは変化しません。しかし、子要素にmargin-top: 150px ; を設定すると、親ボックスの高さよりも大きくなり、子要素は親要素に対して相対的に配置されなくなり、親要素とともにブラウザに対して 150px 下に移動します。つまり、マージンが失われます。 (マージンの崩壊は、親がブラウザに対して相対的に配置され、子が親に対して相対的に配置されていない場合に発生します。子は親に対して相対的に折りたたまれているようなものです)

margin-top: 50px を親要素よりも高い高さに調整すると、子要素は親要素に対して相対的に配置されなくなり、ブラウザに対して親要素とともに 150px 下方に移動します。
ページ効果図は次のとおりです。

マージン崩壊問題を解決するには、bfc の概念を使用する必要があります。

BFC はblock format contextの略です。BFC をトリガーする要素はレンダリング ルールの一部を変更し、これを使用していくつかの難しい CSS バグを解決できます。

bfc をトリガーする要素は次のとおりです。

位置:絶対;
表示: インラインブロック;
フロート: 左/右;
オーバーフロー:非表示;

CSS 構造は次のとおりです。

ページ効果は次のとおりです。

上記のいずれかの行で、マージンの崩壊の問題を補うことができます〜

要約する

CCS の margin: top collapse に関するこの記事はこれで終わりです。CCS margin: top collapse に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

<<:  Vue補間式とv-textディレクティブの違い

>>:  トリガーメソッドを使用して、ファイルタイプの入力をクリックせずにポップアップファイル選択ダイアログボックスを実現します。

推薦する

Ubuntuで顔認識ログインを実装するための完全な手順

1. Howdyをインストール: howdyプロジェクトアドレス sudo add-apt-repo...

MySQL データベース分離レベルと MVCC の詳細な説明

目次1. 分離レベルコミットされていない読み取りREAD COMMITED (コミット読み取り/非反...

MySQL 8.0.15 winx64 のインストールと設定方法のグラフィックチュートリアル (Windows の場合)

この記事では、MySQL 8.0.15 winx64のインストールと設定方法を参考までに紹介します。...

MySQL のジオメトリ型を使用して経度と緯度の距離の問題を処理する方法

テーブルを作成する テーブル `map` を作成します ( `id` int(11) NULLではな...

スクロールバーがスペースを占有することで発生するバグを修正しました

背景このバグは滾動條占據空間ことで発生していました。いくつかの情報を確認して、ようやく解決しました。...

CSS3 は反転可能なホバー効果を実現します

CSS3 は反転可能なホバー効果を実装します。具体的なコードは次のとおりです。 1.css /*基本...

Ubuntu 16.04 カーネルのアップグレード手順

1. 環境仮想マシン上で実行されているUbuntu 16.04では、コマンドuname -rを使用し...

Unix/Linux システムにおける nobody ユーザーと nologin の詳細な紹介

Unix/Linux システムの nobody ユーザーとは何ですか? 1. Windows システ...

MySQLクエリの冗長インデックスと未使用のインデックス操作

MySQL 5.7 以降のバージョンでは、冗長インデックス、重複インデックス、およびインデックスを使...

SpringBoot のパッケージ化と Docker へのアップロード、およびマルチインスタンス デプロイメントの実装に関する簡単な分析 (IDEA バージョン)

最近友人からDockerを触ったことがあるかと聞かれました。あまり自信がなかったので答えられませんで...

Nginx でアンチホットリンクを設定するための手順を完了する

必要:通常、サイト側は、ウェブサイト上の動画や写真が盗まれるのを防ぎたいと考えています。結局のところ...

MySQL が重複データを挿入するのを防ぐ 3 つの方法

新しいテーブルを作成する テーブル「人」を作成します( `id` int NOT NULL COMM...

Linux システムのスワップ領域の紹介

スワップ スペースは、オペレーティング システムに関係なく、今日のコンピューティングの一般的な側面で...

Typescriptの基本構文13個を共有する

目次1. Tsとは何か2. 基本的な文法1. プリミティブデータ型を宣言する2. オブジェクト型を宣...

便利なモバイルスクロールプラグイン BetterScroll

目次スクロールをスムーズにするBetterScrollのスクロール体験慣性ローリングエッジリバウンド...