ホームページ ウェブフロントエンド htmlチュートリアル div+css のレイアウト_html/css_WEB-ITnose におけるブラウザの互換性の問題

div+css のレイアウト_html/css_WEB-ITnose におけるブラウザの互換性の問題

Jun 24, 2016 pm 12:31 PM

Firefox の市場シェアが増加するにつれて、特に Firefox の市場シェアが高いヨーロッパでは、ブラウザの互換性の問題がますます重要になってきています。IE では問題ないように見える場合もあります。 Firefox や他のブラウザではまったく違って見えるので、とても不満に思います。

Firefox と IE を区別するときに最も一般的に使用される !payment メソッドは、他の異なるブラウザの互換性の問題に使用されます。ブラウザのさまざまなバージョンには、@import、アノテーション、属性セレクター、サブオブジェクト セレクター、音声ファミリーなどのメソッドもあります。これらのメソッドについては、「Css Website Layout Record」で説明します。

以下は IE と Firefox の間の CSS 互換性の問題です

1.DOCTYPE は CSS 処理に影響します

2.FF: div は margin-left と margin-right を auto に設定します すでに中央揃えになっていますが、IE は機能しません

3 .FF: 本文に text-align を設定するとき、div は margin: auto (主に margin-left、margin-right) を中央に設定する必要があります

4.FF: パディングを設定した後、div は高さを増やし、 width はサポートされますが、IE はサポートしないので、追加の高さと幅を設定するには ! important を使用する必要があります

5.FF: ! important はサポートされていますが、IE はそれを無視します。 ! important を使用して FF のスタイルを特別に設定できます。注意すべき点は、必ず xxxx !重要な文を別の文の上に配置することです

6.div の垂直方向の中央揃えの問題:vertical-align:middle; 行間隔を DIV 全体と同じ高さに増やします line-height:200px ; 次に、テキストを垂直方向に中央揃えで挿入します。欠点は、ラップせずにコンテンツを制御する必要があることです

7.cursor: ポインターは IE FF でカーソルの指の形を同時に表示できますが、手は IE でのみ使用できます

8.FF: 境界線を追加し、リンクの背景色を設定するには、display: block を設定する必要があります。同時に float: left を設定すると、改行がないことが保証されます。メニューバーに関して、a とメニューバーの高さを設定するのは、下端の表示がずれないようにするためです。高さを設定しない場合は、メニューバーにスペースを挿入できます。

9. mozilla Firefox と IE の BOX モデルの解釈に一貫性がないため、2px の違いが生じます。 解決策: div{margin:30px! important;margin:28px;}

これら 2 つのマージンの順序を記述してはいけないことに注意してください。 Ajie 氏によれば、その逆です。ステートメント ! important は IE では認識されませんが、他のブラウザーでは認識されます。実際には IE では div{maring:30px;margin:28px} のように解釈されます
定義を繰り返すと最後の定義に従って実行されるので、単に margin:XXpx! important;

と書くことはできません10. IE5 と IE6 の不一致に関するボックスの説明

IE5 では、div{width:300px;margin:0 10px 0 10px;}
div の幅は 300px-10px (右パディング)-10px (左パディング) として解釈されます。 div の最終的な幅は 280px ですが、IE6 および他のブラウザの幅は 300px + 10px (右パディング) + 10px (左パディング) = 320px として計算されます。現時点では、div{width:300px! important;width /**/:340px;margin:0 10px 0 10px}
これについて/**/ に次の変更を加えることができます。IE5 と Firefox がサポートしていることだけがわかります。そうではありません。誰かがそれを理解している場合は、教えてください、ありがとう! :)

11.ul タグには、Mozilla ではデフォルトでパディング値がありますが、IE ではマージンのみが値を持つため、最初に ul{margin:0;padding:0;}

を定義すると、ほとんどの問題が解決されます

注:

1. float div を閉じる必要があります。

例: (floatA と floatB の属性は float:left; に設定されています)<#div id="floatA" >

<#div id="floatB" >
<#div id =" NOTfloatC" >
ここでの NOTfloatC は、翻訳を続行するのではなく、下に移動したいと考えています。
このコードは IE では問題ありませんが、問題は FF にあります。その理由は、NOTfloatC が float ラベルではないため、float ラベルを閉じる必要があるためです。
<#div class=”floatB”>
<#div class=”NOTfloatC”>
の間に<#div class=”clear”>
の宣言位置に注意してください。この div は最も適切な場所に配置する必要があり、float 属性を持つ 2 つの div と同じレベルにある必要があります。それらの間にネストされた関係は存在できません。そうしないと例外が発生します。
そしてクリアスタイルを次のように定義します: .clear{
clear:both;}

さらに、高さが自動的に適応できるようにするために、この時点でボックスに float が含まれる場合はラッパーに overflow:hidden;

を追加します、このとき、IE では高さの自動調整が無効です。このとき、IE のレイアウトのプライベート属性をトリガーする必要があります (邪悪な IE!)。これは、zoom:1; で実行できるため、互換性が実現されます。
たとえば、ラッパーは次のように定義されます: .colwrapper{
overflow:hidden;
zoom:1;
margin:5px auto;}

2. マージンを2倍にする問題。

IE でフローティングに設定された div に設定されたマージンが 2 倍になります。これはie6に存在するバグです。

解決策は、display:inline;
をこの div に追加することです。例:
<#div id="imfloat">

対応する CSS は、

#IamFloat{
float:left;
margin:5px; です。 /*IEでは10px*/
display:inline;/*IEでは5px*/}

3. コンテナの包含関係について

多くの場合、特にコンテナー内に 2 つまたは 3 つの float div などの並列レイアウトがある場合、幅に関して問題が発生しやすくなります。 IE では、外側の層の幅は、より広い内側の div によって圧迫されます。ピクセルレベルの精度で測定するには、必ず Photoshop または Firework を使用してください。

4. 高さの問題について

コンテンツが動的に追加される場合は、高さを定義しないのが最善です。ブラウザは自動的に拡大縮小できますが、静的コンテンツの場合は高さを設定するのが最善です。 (時々自動的に開かないようです。何が起こっているのかわかりません)

5. 最も無慈悲な方法 - !重要

いくつかの詳細な問題を解決する方法が本当にない場合は、次の方法を使用できます。このメソッドでは、「 ! important 」の FF が最初に自動的に解析されますが、IE では次のように無視されます。 /*FF のスタイル*/

background:url(/res/images/up/tab1.gif) no-repeat 1px 0px; /* IE のスタイル */}
文 xxxx ! important は次のようにする必要があることに注意してください。上で述べたように

IE7.0 がリリースされ、CSS サポートに新たな問題が発生しました。ブラウザの数が増え、Web ページの互換性は悪化しています。IE7.0 の互換性の問題を解決するために、私は次の記事を見つけました。 ie6 Firefox でのテストでは正常に表示できますが、IE7 では ! important を正しく解釈できるため、ページが必要どおりに表示されません。検索した結果、「*+html」を使用するという IE7 用の良いハックを見つけました。これで IE7 で閲覧できるようになりました。問題はありません。

次のような CSS を書きます:

#example { color: #333; } /* Moz */

* html #example { color: #666; } /* IE6 */

*+html #example { color: #999; } /* IE7 */


すると、フォントの色は、Firefox では #333、IE6 では #666、IE7 では #999 として表示されます。これらは互いに干渉しません。くだらない IE6 がすぐに廃止されることを心から願っています。 。 。 。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

&lt; Progress&gt;の目的は何ですか 要素? &lt; Progress&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:34 PM

この記事では、HTML&lt; Progress&gt;について説明します。要素、その目的、スタイリング、および&lt; meter&gt;との違い要素。主な焦点は、&lt; Progress&gt;を使用することです。タスクの完了と&lt; Meter&gt; statiの場合

&lt; datalist&gt;の目的は何ですか 要素? &lt; datalist&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:33 PM

この記事では、HTML&lt; Datalist&GT;について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? Mar 17, 2025 pm 12:20 PM

記事では、HTML5クロスブラウザーの互換性を確保するためのベストプラクティスについて説明し、機能検出、プログレッシブエンハンスメント、およびテスト方法に焦点を当てています。

&lt; meter&gt;の目的は何ですか 要素? &lt; meter&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:35 PM

この記事では、html&lt; meter&gt;について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化&lt; Meter&gt; &lt; Progress&gt;およびex

HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? Mar 17, 2025 pm 12:27 PM

この記事では、ブラウザのユーザー入力を直接検証するために、必要、パターン、MIN、MAX、および長さの制限などのHTML5フォーム検証属性を使用して説明します。

ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? Mar 20, 2025 pm 05:56 PM

この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

&lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? &lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? Mar 20, 2025 pm 06:05 PM

この記事では、&lt; iframe&gt;外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。

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

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

See all articles