position:fixed;
はIE IE 7まで)でサポートされておらず、IE 7 STRICT DOCTYPE
がある場合。
私の質問は、「IE 7 with TRANSITIONAL DOCTYPE
で動作させるにはどうすればよいですか?」
DOCTYPE
を変更することを提案しないでください。これは私の質問に答えないので、ありがとうございます。
fixed
をサポートするために厳密なDOCTYPEは必要ありません。 標準モード (または「ほぼ標準」)をトリガーするDOCTYPEのみが必要です。これは、次のような一時的なDoctypeである可能性があります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
またはXHTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
システムID(最後のURI)が含まれている限り。
あなたのページが本当にがQuirksモードに依存している場合(うーん!)、申し訳ありませんが、fixed
を使用することはできず、 JavaScriptハックに頼る(しかし、とにかくIE6用のハックが必要になるかもしれません)。
Transitional/Strict Docタイプを使用しても、固定位置は機能しません。ただし、互換モードでIE9を使用しており、IE8ランタイムライブラリを使用してレンダリングすることを想定しています。この問題を修正するには、次のCSSを要素に追加する必要がありました。
.elementToBeFixed {
position: fixed;
top: 0;
left: 0;
}
上または左が欠落していると機能しません。IEのすべてのバージョンで機能するには、明示的にゼロ(または目的の値)に設定する必要があります。言うまでもなく、IE吸う。