0

他のすべてのブラウザーで機能するため、これは IE6 のバグであることは間違いありません。

このhtmlコードのjsFiddle

        <div style="background:blue; width:600px; margin-left:auto; margin-right:auto;">
            BLUE
            <div style="background:red; position:absolute; width:100%; left:0;">
                red
            </div>
        </div>

したがって、"RED" div はそのコンテナー (この場合は本体) の 100% の幅である必要があります。IE6 では常に 600px です。ie6を無視することを含まない修正はありますか? (できたらいいのに、信じて!)

4

1 に答える 1

1

要素は、最初に配置された (静的ではない) 祖先要素に対して相対的に配置されます。絶対位置要素は、静的以外の位置を持つ最初の親要素を基準にして配置されます。そのような要素が見つからない場合、それを含むブロックは<html>

したがって、内側の div を親に対して「絶対」に配置するには、親を相対的に配置する必要があります。

親div相対でコードを表示するjsFiddle

<div style="background:blue; width:600px; margin-left:auto; margin-right:auto;position:relative">BLUE
    <div style="background:red; position:absolute; width:100%; left:0;">red</div>
</div>

残りの状況 (ie6 バグ?) については、さらにコードが必要です。

于 2013-02-25T13:21:06.200 に答える