ホームページ ウェブフロントエンド CSSチュートリアル なぜ CSS2.1 はブロック書式設定コンテキストを作成するために「visible」以外の「overflow」を使用するのでしょうか?

なぜ CSS2.1 はブロック書式設定コンテキストを作成するために「visible」以外の「overflow」を使用するのでしょうか?

Dec 07, 2024 pm 06:10 PM

Why Does CSS2.1 Use `overflow` Other Than

CSS2.1 では、新しいブロック フォーマット コンテキストを確立するために「Visible」以外のオーバーフロー値が必須なのはなぜですか?

CSS2.1 では、 "visible" 以外のオーバーフロー値を指定すると、新しい "ブロック フォーマット コンテキスト" が作成されます。この決定により、ブロック フォーマット コンテキスト (BFC) の作成とオーバーフローの抑制という、一見無関係に見える 2 つの機能を組み合わせる背後にある理論的根拠について疑問が生じました。

歴史的背景と重要な考慮事項

CSS メーリング リストで行われた問い合わせによると、この決定は、交差するボックス内のスクロールに対処する必要性から生じています。浮く。元の CSS 2.0 仕様では、ブラウザがスクロール中に侵入するフロートの周囲でコンテンツを再ラップする必要があり、パフォーマンスの問題が発生しました。

CSS2.1 修正では、「visible」以外のオーバーフロー値に新しい BFC を確立することで、この再ラップを防止しています。これにより、次のことが保証されます。

  • 新しい BFC 内のコンテンツは float の影響を受けません。
  • BFC のスクロール動作は、float の存在による影響を受けません。

次のことを考えてみましょう例:

<div>...</div>
<div>
  ...:
  ...:
</div>
div {
  height: 80px;
}

div:first-child:before {
  float: left;
  height: 100px;
  margin: 10px;
  content: 'Float';
}

CSS 2.0 では、overflow:visible (デフォルト) を使用すると、2 番目のボックスが浮動要素に重なります。ただし、オーバーフロー: 自動 (CSS 2.1) の場合、2 番目のボックスは新しい BFC を取得し、フロートがそのコンテンツと交差するのを防ぎます。

オーバーフローの影響: 非表示

overflow: hidden は通常、オーバーフローしたコンテンツを非表示にしますが、プログラムによるスクロールは可能です。これは重要です。交差するフロートを含む overflow: hidden ボックスも、スクロール中の再折り返しを防ぐために新しい BFC を確立する必要があるためです。

CSS2.1 で導入された変更点

CSS2 .1 では追加の変更が導入されています:

  • ブロックの書式設定コンテキスト ルート要素 (要素
  • オーバーフロー: 非表示および高さ: 自動のボックスはコンテナの境界によって制限され、フロートと交差できなくなりました。

一貫性とパフォーマンス

最終的には、 「可視」以外のオーバーフロー値に対して新しい BFC を作成するのは、主にパフォーマンスの考慮事項と、オーバーフローするコンテンツの処理における一貫性への要望によって決まりました。このアプローチにより、スクロールのパフォーマンスが最適化され、予測可能なレイアウトが維持されます。

以上がなぜ CSS2.1 はブロック書式設定コンテキストを作成するために「visible」以外の「overflow」を使用するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ロードスピナーとアニメーションを作成するためのCSSチュートリアル ロードスピナーとアニメーションを作成するためのCSSチュートリアル Jul 07, 2025 am 12:07 AM

CSSロード回転子を作成するには3つの方法があります。1。境界の基本回転子を使用して、HTMLとCSSを介してシンプルなアニメーションを実現します。 2。複数のポイントのカスタム回転子を使用して、異なる遅延時間を経てジャンプ効果を実現します。 3.ボタンに回転子を追加し、JavaScriptを介してクラスを切り替えて、読み込みステータスを表示します。各アプローチは、ユーザーエクスペリエンスを向上させるために、色、サイズ、アクセシビリティ、パフォーマンスの最適化などのデザインの詳細の重要性を強調しています。

CSSブラウザの互換性の問題とプレフィックスに対処します CSSブラウザの互換性の問題とプレフィックスに対処します Jul 07, 2025 am 01:44 AM

CSSブラウザの互換性とプレフィックスの問題に対処するには、ブラウザサポートの違いを理解し、ベンダーのプレフィックスを合理的に使用する必要があります。 1. FlexBoxやグリッドのサポート、位置:粘着性の無効、アニメーションのパフォーマンスなどの一般的な問題を理解することは異なります。 2. CANIUSE確認機能サポートステータスを確認します。 3. -webkit-、-moz-、-ms-、-o-およびその他のメーカーのプレフィックスを正しく使用します。 4.自動的にプレフィックスを追加するためにAutoprefixerを使用することをお勧めします。 5. PostCSSをインストールし、ターゲットブラウザを指定するようにBrowserSlistを構成します。 6.建設中の互換性を自動的に処理します。 7. Modernizr検出機能は、古いプロジェクトに使用できます。 8.すべてのブラウザの一貫性を追求する必要はありません、

ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:インライン、ブロック、およびinline-blockinhtml/cssarelayoutbehavior、spaceusage、andstylingcontrol.1.inlineelementsflowwithtext、notstartonnewlines、nagrorewidth/height、height、andonlyhorizo​​ntalpadddddddddddddddding

CSSクリップパスでカスタムシェイプを作成します CSSクリップパスでカスタムシェイプを作成します Jul 09, 2025 am 01:29 AM

CSSのクリップパス属性を作物要素に使用して、写真やSVGに依存することなく、三角形、円形ノッチ、ポリゴンなどのカスタム形状になります。その利点には、次のものが含まれます。1。円、楕円、ポリゴンなどのさまざまな基本的な形状をサポートします。 2。レスポンシブ調整とモバイル端子に適応可能。 3.アニメーションが簡単で、HoverまたはJavaScriptと組み合わせて動的効果を実現できます。 4.レイアウトフローには影響せず、ディスプレイエリアのみを収穫します。一般的な使用法は、円形のクリップパス:円(50pxatcenter)および三角クリップパス:ポリゴン(50%0%、100 0%、0 0%)などです。知らせ

スタイリングは、CSSとは異なるリンクを訪問しました スタイリングは、CSSとは異なるリンクを訪問しました Jul 11, 2025 am 03:26 AM

アクセスしたリンクのスタイルを設定すると、特にコンテンツ集約型のWebサイトでユーザーエクスペリエンスを向上させることができ、ユーザーがより良いナビゲートを支援します。 1。CSSを使用してください:訪問した擬似クラスは、色の変化などの訪問されたリンクのスタイルを定義します。 2。ブラウザは、プライバシーの制限により、いくつかの属性の変更のみを許可することに注意してください。 3.突然の状態を避けるために、色の選択は全体的なスタイルと調整する必要があります。 4.モバイル端子はこの効果を表示しない場合があり、アイコン補助ロゴなどの他の視覚的なプロンプトと組み合わせることをお勧めします。

CSSを使用して応答性のある画像を作成する方法は? CSSを使用して応答性のある画像を作成する方法は? Jul 15, 2025 am 01:10 AM

CSSを使用してレスポンシブ画像を作成するには、主に次の方法で達成できます。1。最大幅を使用してください:100%と高さ:自動化して、割合を維持しながら画像がコンテナ幅に適応できるようにします。 2。HTMLのSRCSETおよびサイズの属性を使用して、異なる画面に適合した画像ソースをインテリジェントにロードします。 3.オブジェクトフィットとオブジェクトポジションを使用して、画像のトリミングとフォーカスディスプレイを制御します。一緒に、これらの方法により、画像がさまざまなデバイスで明確かつ美しく表示されるようになります。

一般的なCSSブラウザの矛盾とは何ですか? 一般的なCSSブラウザの矛盾とは何ですか? Jul 26, 2025 am 07:04 AM

さまざまなブラウザのCSS解析に違いがあるため、主にデフォルトのスタイルの違い、ボックスモデルの計算方法、フレックスボックスおよびグリッドレイアウトサポートレベル、および特定のCSS属性の一貫性のない動作を含む一貫性のないディスプレイ効果が得られます。 1.デフォルトのスタイル処理は一貫性がありません。解決策は、cssresetまたはremormize.cssを使用して初期スタイルを統合することです。 2。IEの古いバージョンのボックスモデル計算方法は異なります。 Box-Sizing:Border-Boxを統一された方法で使用することをお勧めします。 3. FlexBoxとグリッドは、エッジの場合や古いバージョンでは異なる機能を示します。より多くのテストを行い、Autoprefixerを使用します。 4.一部のCSS属性の動作は一貫性がありません。 Caniuseは相談して格下げする必要があります。

CSSユニットの分解:PX、EM、REM、VW、VH比較 CSSユニットの分解:PX、EM、REM、VW、VH比較 Jul 08, 2025 am 02:16 AM

CSSユニットの選択は、設計要件と応答性の要件に依存します。 1.PXは固定サイズに使用され、正確な制御に適していますが、弾力性の欠如に適しています。 2.EMは相対単位であり、親要素の影響によって簡単に引き起こされますが、REMはルート要素に基づいてより安定しており、グローバルなスケーリングに適しています。 3.VW/VHは、レスポンシブデザインに適したビューポートサイズに基づいていますが、極端な画面の下でのパフォーマンスに注意を払う必要があります。 4.選択するときは、応答性の調整、要素階層関係、ビューポートの依存関係に基づいて決定する必要があります。合理的な使用は、レイアウトの柔軟性とメンテナンスを改善できます。

See all articles