現在のページのブラウザのレンダリングモードを検出する方法
-
05-07-2019 - |
質問
最近のブラウザには一般に、標準モードと互換モードの2つのレンダリングモードがあります。ブラウザは見出しDocTypeを検出します。
問題は、実行時に現在のページのレンダリングモードを検出する方法です。それを行うFirebugツールはありますか?
解決
IE8より前:
alert('Page was rendered in ' +
((document.compatMode == 'CSS1Compat') ? 'Standards' : 'Quirks') + ' Mode.');
IE8の場合:
var vMode = document.documentMode;
var rMode = 'IE5 Quirks Mode';
if(vMode == 8){
rMode = 'IE8 Standards Mode';
} else if(vMode == 7){
rMode = 'IE7 Strict Mode';
}
alert('Rendering in: ' + rMode);
IE8の新しい「デフォルトの標準モード」のメリットを享受するには、 IE8標準モードでレンダリングする必要がある動作。
このモードは、HTML + CSSのレンダリングに影響します document.getElementById(id);
や .setAttribute(名前、値);
他のヒント
jQuerys jQuery.supportもご覧ください。ブラウザでサポートされている標準(boxModel、opacityなど)がわかります
http://docs.jquery.com/Utilities/jQuery.support
i.e。
jQuery.support.boxModel; //false in IE when in quirksmode, true otherwise.
所属していません StackOverflow