質問

それは私の理解です position: absolute 非静的な立場を持っている最初の親にとっては絶対的です。親が指定された位置がない場合、それはブラウザ/ウィンドウに絶対になります。

position: fixed 一方、ブラウザにとっては絶対的なものになりますが、Quirksモードの場合はIEでは機能しません。

私の問題は、私が何かになりたいということです top:0; left:0; しかし、ウェブサイトはQuirksモードであり、私は個人的なDiv内でのみ編集します。 (MySpaceのようなユーザーWebサイトです)。持っている親の多いdivがたくさんあります position: relative.

どうすれば入手することができますか position: absolute のように振る舞う position: fixed オブジェクトが静止する必要なく(必要に応じて静止する可能性があります)?

役に立ちましたか?

解決

IEの初期バージョンは、ポジションをサポートしないだけです。

私が知っている唯一のことは、そのようなJavacriptの回避策です:

var layerPadding = 5;
function layerScrollFixEx() {
    if (layerGetScrollPosition() != (document.getElementById('layer').offsetTop - layerPadding)) {
        document.getElementById('layer').style.top = layerGetScrollPosition() + layerPadding + "px";
    }
}

function layerGetScrollPosition() {
    if (typeof window.pageYOffset != 'undefined') {
         return window.pageYOffset;
    }
    else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {
         return document.documentElement.scrollTop;
    }
        else if (typeof document.body != 'undefined') {
         return document.body.scrollTop;
    }
}
layerScrollInterval = window.setInterval("layerScrollFixEx()", 1);

これは、これがまだ関連していたときにしばらく前に行ったコードからのコードの抜粋です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top