IE のボックス モデルのレンダリングは標準モードと Quirks モードで大きく異なります。標準モードでのボックス モデルの解釈は他の標準ブラウザと同じですが、Doctype を宣言しないと IE には大きな違いがあります。デフォルトは Quirks モードです。したがって、互換性の理由から、現在のドキュメントのレンダリング方法を取得する必要がある場合があります。
document.compatMode には、BackCompat と CSS1Compat という 2 つの戻り値があり、便利です。
BackCompat: 標準互換モードがオフになっています。ブラウザのクライアント領域の幅は document.body.clientWidth です。CSS1Compat: 標準互換モードがオンになります。 ブラウザのクライアント領域の幅は document.documentElement.clientWidth です。
次に、Web ページのクライアント領域の幅と高さ、スクロール バーの幅と高さ、スクロール バーの左と上を正確に取得するコードを書きました。
if (document.compatMode == "BackCompat") {
cWidth = document.body.clientWidth;
cHeight = document.body.scrollWidth;
sHeight = document.body.scrollHeight; .body.scrollLeft;
sTop = document.body.scrollTop;
}
else { //document.compatMode == "CSS1Compat"
cWidth = document.documentElement.clientWidth; = document.documentElement.clientHeight;
sWidth = document.documentElement.scrollHeight;
sLeft = document.body.scrollLeft; .documentElement.scrollLeft;
sTop = document.documentElement.scrollTop == 0 ? document.body.scrollTop :
}