ホームページ > ウェブフロントエンド > CSSチュートリアル > HTML のフローティング要素の後に上部マージンが機能しないのはなぜですか?

HTML のフローティング要素の後に上部マージンが機能しないのはなぜですか?

Barbara Streisand
リリース: 2024-12-08 16:01:15
オリジナル
978 人が閲覧しました

Why Doesn't Top Margin Work After a Floated Element in HTML?

フローティング要素の後に HTML 要素の上マージンが無視されるのはなぜですか?

CSS では、フローティング要素がドキュメントの通常のフローから削除され、それを囲む他の要素。ただし、フロートの後の要素に上マージンを適用しようとすると、この動作により予期しない結果が生じる可能性があります。

CSS 仕様によると、「フロートはフロー内にないため、位置決めされていないブロック ボックスは、フロートボックスの前後に作成されたフロートは、フロートが存在しないかのように垂直に流れます。」その結果、後続の要素の上マージンはブラウザの計算では基本的に無視されます。

この問題を修正するための一般的なアプローチは、後続の要素をコンテナでラップし、マージンの代わりにラッパーにパディングを適用することです。要素に。これにより、外部要素から独立した内部空白スペースが効果的に作成され、上部マージンが期待どおりに機能できるようになります。

例:

以下のサンプル HTML コードでは、浮動小数点

<div>後続の <div> のマージンを防ぎます。
<div>
ログイン後にコピー

これを修正するには、後続の <div> をラップします。

<div>
ログイン後にコピー

この手法を利用することで、浮動要素と後続の要素の間に「バッファ」を効果的に作成し、上部マージンが適切に適用されるようにし、

以上がHTML のフローティング要素の後に上部マージンが機能しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
前の記事:疑似クラスを使用して CSS で画像を Font Awesome アイコンに置き換えるにはどうすればよいですか? 次の記事:JavaScript はどのようにして CSS スタイルシートを動的に操作できるのでしょうか?
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
関連トピック
詳細>
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート