ホームページ > ウェブフロントエンド > CSSチュートリアル > 浮動要素がその要素を含む Div をオーバーフローするのはなぜですか?それを修正するにはどうすればよいですか?

浮動要素がその要素を含む Div をオーバーフローするのはなぜですか?それを修正するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-27 18:37:12
オリジナル
381 人が閲覧しました

Why Do Floated Elements Overflow Their Containing Div, and How Can I Fix It?

浮動要素のエスケープ封じ込め: Div オーバーフローのトラブルシューティング

div 内で浮動小数点を操作する場合、浮動要素が範囲を超えて拡張される問題が発生する可能性があります。それらを含む div の境界。この寸法の不一致により、意図したレイアウトが中断される可能性があります。

根本原因:

フロートが通常のドキュメント フローから削除され、親要素にギャップが生じます。その後、非フローティング コンテンツがこの空いたスペースを埋めるように調整され、その結果、フローティング要素を包含できない小さな div が生成されます。

解決策 1: オーバーフロー コントロール

  • オーバーフローの追加: 親に対して非表示div:
#parent { overflow: hidden }
ログイン後にコピー

これにより、浮動要素のオーバーフローが防止され、浮動要素が div の境界内に留まることが保証されます。ただし、div の高さを超えるコンテンツは切り取られる可能性があります。

解決策 2: 親 Div をフローティングする

  • 親 div をフローティングします:
#parent { float: left; width: 100% }
ログイン後にコピー

これにより、フローティングに対応するために親 div を垂直に伸ばすことができます。 コンテンツ。無限の拡張を避けるために、div の幅が固定値またはパーセンテージに設定されていることを確認してください。

解決策 3: 要素をクリアする

  • 下にクリア要素を使用します。フローティング コンテンツ:
<div class="parent">
  <img class="floated_child" src="..." />
  <span class="clear"></span>
</div>
ログイン後にコピー
span.clear { clear: left; display: block; }
ログイン後にコピー

クリア要素は、センチネルは、次のコンテンツをフローティング コンテンツの下の新しい行で強制的に開始し、div の正しいサイズを復元します。

以上が浮動要素がその要素を含む Div をオーバーフローするのはなぜですか?それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート