ホームページ ウェブフロントエンド htmlチュートリアル IE6、IE7、FF CSS + DIV の互換性問題に対する包括的なソリューション CSS HACK_html/css_WEB-ITnose

IE6、IE7、FF CSS + DIV の互換性問題に対する包括的なソリューション CSS HACK_html/css_WEB-ITnose

Jun 24, 2016 pm 12:32 PM

著作権声明: 転載する場合は、記事の元の出典、著者情報、およびこの声明をハイパーリンクの形式で示してください
http://monw3c.blogbus.com/logs/12837657.html

1 . CSS HACK
現在、このメソッドでほぼすべての HACK が解決できます

1. ! important

IE7 での ! important のサポートにより、! important メソッドは IE6 の HACK 専用になりました。覚えておいてください。宣言位置は事前に指定する必要があります。)

}

注: IE7 の

*+html HACK では、HTML の先頭に次のステートメントが必ず含まれるようにする必要があります:



2. ユニバーサルフロートクロージャ (非常に重要!)

float をクリアする原理については、[構造マークアップを使用せずに Float をクリアする方法] を参照してください。
Global CSS に次のコードを追加し、閉じる必要がある div に class="clearfix" を追加するだけで毎回機能します。 .



1, ! important

IE7 の !payment のサポートにより、! important メソッドは IE6 の HACK 専用になりました (記述に注意してください。宣言位置は事前に指定する必要があることに注意してください。)



2 , FireFox の IE6/IE77

*+html および *html は、Firefox ではサポートされていない IE 固有のタグです。また、*+html は、IE7 固有のタグです



注:
*+html の HACK。 IE7 は、HTML の先頭に次のステートメントがあることを確認する必要があります:


2. ユニバーサル float クロージャ (非常に重要!)

float をクリアする原理については、[構造マークアップを使用せずに Float をクリアする方法] を参照してください。
次のコードをグローバル CSS に追加し、閉じる必要がある div に class= を追加します。「clearfix」で十分です。これは繰り返し機能します


3. パディングを設定します。 FF の下の div では幅と高さが増加しますが、IE では増加しません (!重要)
2、中央揃えの問題
1) を同じ高さに設定します。現在の div を渡し、vertical-align: middle を渡します (コンテンツを折り返さないように注意してください)。
2) 水平方向に中央揃えにします (もちろん万能ではありません)
3. aタグ内のコンテンツに対して、display: block;を設定する必要があります(ナビゲーションタグで共通)
4. FFとIEのBOXの理解の違いにより、floatに設定されたdivは次のような問題があります。 IE では二重マージンとして使用します。
5. UL タグには、デフォルトでリスト形式とパディングが含まれます。これは、不要なトラブルを避けるために事前に宣言することをお勧めします。高さの適応性を実現するには、div の高さを追加するのが最善です。

1 CSS の場合。 Firefox ie6 と ie7 のスタイル
現在、ほとんどの場合、ハッキングに ! important が使用されています。ie6 と Firefox のテストでは、正常に表示できます
が、ie7 は ! important を正しく解釈できるため、ページが必要に応じて表示されません。 !ピンを見つけました
IE7 の良いハックは、「*+html」を使用することです。IE7 でブラウズすれば問題ありません。
次のような CSS を書きます:

#1 { color: #333; } /* Moz */
* html #1 { color: #666; } /* IE6 */
*+html #1 { color: #999; } /* IE7 */
すると、フォントの色は、Firefox では #333、IE6 では #666、IE7 では #999 として表示されます。

2 CSS レイアウトのセンタリングの問題
主なスタイル定義は次のとおりです:

body {TEXT-ALIGN: center;}
#center { MARGIN-RIGHT: auto; }
手順:
最初に親要素は TEXT-ALIGN: center を定義します。これは、IE では親要素内のコンテンツが中央に配置されることを意味し、この設定で十分です。
ただし、mozilla の中心に置くことはできません。解決策は、サブ要素を設定するときに「MARGIN-RIGHT: auto;MARGIN-LEFT: auto;」を追加することです
この方法を使用してページ全体を中央に配置したい場合は、使用しないことをお勧めします。 DIV では、複数の div を順番に分割できます。
各分割 div で MARGIN-RIGHT: auto;MARGIN-LEFT: auto; を定義するだけです。

3 ボックス モデルのさまざまな解釈

#box{ //ie6.0 の場合 - width:500px; //ff+ie6.0 の場合}
#box{ width:600px! important // for ff width:600px; //ff+ie6.0 の場合 width /**/:500px; //ie6.0-}

4 浮動小数点によって生成される倍精度の距離
#box{ float:left; 100px ; margin:0 0 0 100px; //この場合、IE は 200px の距離を生成します。 display:inline; //float を無視します。
Block 要素の特徴について詳しく説明します。新しい行で始まり、高さ、幅、行の高さ、余白がすべて制御可能 (ブロック要素) Inline 要素の特徴は、次のとおりです。他の要素と同じ行上では...制御できません。 (インライン要素);

#box{ //インライン要素をブロック要素としてシミュレートできます。 //同じ行に配置する効果を実現します。

5 IE と width高さの問題

IE は min- の定義を認識しませんが、実際には通常の幅と高さを min があるかのように扱います。これは大きな問題です。通常のブラウザでは幅と高さだけを使用すると、幅と高さはまったく設定されません。 IEの下で。
たとえば、背景画像を設定したい場合は、この幅がより重要です。この問題を解決するには、次のようにします:
#box{ width: 80px; height: 35px;}html>body #box{ width: auto; min-height: 35px;}

6 ページの最小幅

min-width は、レイアウトが常に正しいことを保証するために、要素の最小幅が特定の幅未満にならないように指定できる非常に便利な CSS コマンドです。しかし、IE はこれを認識せず、実際には幅を最小幅として扱います。このコマンドを IE で機能させるには、タグの下に
を配置し、クラスを div に割り当てます。
CSS は次のように設計されます:
#container{ min-width: 600px; width:expression(document.body.clientWidth 最初の min-width は通常です。ただし、行 2 の幅には、IE でのみ認識される Javascript が使用されているため、HTML ドキュメントの形式が緩和されます。実際にはJavaScriptの判断により最小幅を実装しています。

7 float をクリアします

.hackbox{ display:table; // オブジェクトをブロック要素レベルのテーブルとして表示します} または .hackbox{ clear:both;}
または追加: (擬似オブジェクト) の後に、設定が発生します通常、コンテンツと組み合わせて使用​​されるオブジェクト Content の後、IE はこの疑似オブジェクトをサポートしません。Ie 以外のブラウザーはサポートします。そのため、IE/WIN ブラウザーには影響しません。これの最も厄介な点は...#box:after{ content: "."; display: block; height: 0; clear: Both; Visibility: hidden;}
8 DIV フローティング IE テキストが 3 つの画像を生成する

左側のオブジェクトはフロートし、右側のオブジェクトのテキストは左側から 3 ピクセル離れた位置に配置されます。 left{ float :left; width:50%;}#right{ width:50%;}*html #left{ margin-right:-3px; //この文が重要です}
HTML コード

9 属性セレクター (これは互換性があるとは見なされません。CSS を非表示にするバグです)

p[id]{}div[id]{}
これは IE6.0 およびそれ以下のバージョンでは非表示であり、FF および OPera で動作します
属性セレクターとサブセレクター まだ違いがあります。サブセレクターの範囲は形式的には狭くなりますが、属性セレクターの範囲は比較的大きくなります。たとえば、p[id] では、id を持つすべての p タグが同じになります。スタイル

10 IE かくれんぼの問題

div アプリケーションが複雑で、各列にいくつかのリンクがある場合、DIV でかくれんぼ問題が発生しやすくなります。
一部のコンテンツは表示できません。マウスでこの領域を選択すると、コンテンツが実際にページ上にあることがわかります。
解決策: #layout に line-height 属性を使用するか、#layout に固定の高さと幅を使用します。ページ構造はできるだけシンプルにしてください。

11 高さ非適応

高さ非適応とは、特に内部オブジェクトが
margin または Paddign を使用している場合、内側のオブジェクトの高さが変更された場合に、外側のレイヤーの高さを自動的に調整できないことを意味します。
例:


pContent in object

CSS: #box {background-color:#eee; }
#box p {margin-top: 20px;margin-bottom: 20px; }

解決策: CSS コード: .1{height:0px;overflow:hidden;} の上下に 2 つの空の div オブジェクトを追加するか、DIV に border 属性を追加します。


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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

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)

HTMLは初心者のために簡単に学ぶことができますか? HTMLは初心者のために簡単に学ぶことができますか? Apr 07, 2025 am 12:11 AM

HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用​​できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

HTML、CSS、およびJavaScriptの役割:コアの責任 HTML、CSS、およびJavaScriptの役割:コアの責任 Apr 08, 2025 pm 07:05 PM

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

HTMLでの開始タグの例は何ですか? HTMLでの開始タグの例は何ですか? Apr 06, 2025 am 12:04 AM

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

HTML、CSS、およびJavaScriptの理解:初心者向けガイド HTML、CSS、およびJavaScriptの理解:初心者向けガイド Apr 12, 2025 am 12:02 AM

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

WebアノテーションにY軸位置の適応レイアウトを実装する方法は? WebアノテーションにY軸位置の適応レイアウトを実装する方法は? Apr 04, 2025 pm 11:30 PM

Y軸位置Webアノテーション機能の適応アルゴリズムこの記事では、単語文書と同様の注釈関数、特に注釈間の間隔を扱う方法を実装する方法を探ります...

Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Apr 04, 2025 pm 11:54 PM

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

CSS3とJavaScriptを使用して、クリック後に周囲の写真を散乱および拡大する効果を実現する方法は? CSS3とJavaScriptを使用して、クリック後に周囲の写真を散乱および拡大する効果を実現する方法は? Apr 05, 2025 am 06:15 AM

画像をクリックした後、散乱と周囲の画像を拡大する効果を実現するには、多くのWebデザインがインタラクティブな効果を実現する必要があります。特定の画像をクリックして周囲を作成してください...

HTML、CSS、およびJavaScript:Web開発者に不可欠なツール HTML、CSS、およびJavaScript:Web開発者に不可欠なツール Apr 09, 2025 am 12:12 AM

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。

See all articles