ホームページ > ウェブフロントエンド > CSSチュートリアル > IE8 標準モードで「margin: 0 auto;」要素が中央に配置されないのはなぜですか?

IE8 標準モードで「margin: 0 auto;」要素が中央に配置されないのはなぜですか?

Patricia Arquette
リリース: 2024-11-27 09:28:10
オリジナル
1067 人が閲覧しました

Why Doesn't

「margin: 0 auto;」の謎を解明Internet Explorer 8 の

Web 開発の分野で、当惑させる異常事態が表面化し、開発者は「margin: 0 auto;」の動作に苦戦しています。 Internet Explorer 8 (IE8) の場合。この記事では、この問題を取り巻く複雑さを掘り下げ、IE8 の型破りさの背後にある根本的な理由を探ります。

問題の核心は、ブロック レベルの要素 (この場合は入力ボタン) をブロック内の中央に配置することにあります。コンテナ事業部Firefox、Opera、Safari、Chrome、IE7、IE8 互換モードを含むほとんどのブラウザでは、「margin: 0 auto;」を使用するとボタンが簡単に中央に配置されます。ただし、IE8 標準モードでは、ボタンは中心からずれたままです。

Internet Explorer 開発者ツールバーは、謎を解く重要な手がかりを提供します。 HTML ソースを調べると、HTML ドキュメント タイプを定義する重要な要素である「!DOCTYPE」宣言が IE8 にないことが明らかになります。

「!DOCTYPE」宣言がない場合、IE8 の「quirks」モードがトリガーされます。 、従来の Web サイトの問題を軽減するために設計された互換モード。 quirks モードでは、IE8 は、CSS プロパティの解釈の変更など、標準以外の動作を採用します。

中央揃えの問題を修正するには、「!DOCTYPE html PUBLIC」-//W3C//DTD XHTML 1.0 Transitional/ を追加します。 /EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"">

「!DOCTYPE」宣言を適切に配置すると、IE8 は「margin: 0 auto;」を正確に解釈します。当然のように、ボタンがコンテナ内の中央に配置されます。これにより、ブラウザ間でのボタン配置のばらつきが解消されました。

結論から言うと、「margin: 0 auto;」の謎の動作は解決しました。 IE8 標準モードでは、「!DOCTYPE」宣言がないことが原因です。この宣言を通じて標準モードを強制することにより、IE8 は他のブラウザーと連携し、複数のプラットフォーム間で一貫性のある予測可能なスタイルを保証します。

以上がIE8 標準モードで「margin: 0 auto;」要素が中央に配置されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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