web-dev-qa-db-ja.com

Internet Explorer 11にはまだ癖モードがありますか?

Internet Explorer 11にはまだ癖モードがありますか?私たちは、癖モードに依存する非常に古いシステムを使用しています。

非常に古くて脆弱な環境であることは知っていますが、それが機能し続けるかどうか疑問に思っています。

12
Willem de Wit

はい、そうです。

IE11には、IE10と同じ下位互換モードがあります(もちろん、IE10互換モードもあります)。

実際、IE10と共通して、実際にはtwo quirksモードがあり、それらは互いに非常にわずかに異なります。 (「Quirksモード」および「IE5Quirksモード」)。しかし、ほとんどの目的では、実際にそれを知る必要はありません。以前のIEバージョンとまったく同じように、Doctypeがない場合は、デフォルトで元のQuirksモードになります。

したがって、あなたの質問に対する簡単な答えは、「はい、大丈夫です。それはまだそこにあり、あなたのページはIE10と同じようにIE11でも機能します」です。

ただし、IEのエンジニアは、これらのモードの使用を思いとどまらせようとしています。

彼らがこれを行った主な方法は、開発ツールパネルでそれらを非表示にすることです-ブラウザモードオプションが表示されますが、ページがロードされたモードと「エッジ」の2つのオプションしかありません。 IE11標準モードのモード。ページが標準モードで読み込まれた場合、「エッジ」オプションのみが表示されます。

つまり、そのように記述されている場合は、ページをquirksモードで読み込むことができますが、標準モードでページを読み込むと、そのページをquirksモードに戻すオプションが表示されません。

注意すべき点の1つは、ページに埋め込まれたActiveXコントロールなど、他の特定の古い機能を使用している場合、ブラウザのセキュリティモデルに問題がある可能性があることです。これはIE10とIE11の間であまり変わっていないので、ページがIE10で機能する場合は問題ありませんが、IE9からIE11にアップグレードする場合は、問題が発生する可能性があります。再度有効にする方法はありますが、少し見苦しい場合があります。

また、純粋なCSSの観点から、癖モードから標準モードへの変換は実際には非常に簡単であることも指摘しておきます。スイッチによって引き起こされるレイアウトの不具合のほとんどは、ボックスモデルの変更の結果ですが、標準モードは、CSSに*{box-sizing:border-box;}を追加するだけで、同じ癖モードのボックスモデルを使用するように設定できます。

レイアウトが主な問題である場合は、それを試してみることを検討する必要があります。これは、実際にはすべての後に癖モードが必要ない場合があるためです。

15
Spudley

以前に質問が表示されなかったことをお詫び申し上げますが、もちろんあります。 X-UA互換のHTTPと同等のヘッダーを使用してHTMLコードで変更する必要があります。

したがって、たとえば、Internet Explorer 8.0をエミュレートする場合は、ヘッドセクションに次のように挿入します。

<!DOCTYPE html>
  <html>
    <head>
      <meta http-equiv="X-UA-Compatible" content="IE=8">
        ...

JavaScript navigator.userAgentでさえ、ブラウザーのバージョンに依存するスクリプトを壊さないように変更されます。

navigator.userAgent
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C)

それだけ!さようなら..そしてあなたの開発に最高の結果!!!