offsetParent プロパティは、offsetParent を呼び出す要素に最も近い (包含階層内で最も近い) オブジェクトへの参照を返し、CSS で配置されたコンテナ要素です。 このコンテナ要素が CSS で配置されていない場合、offsetParent 属性の値はルート要素 (標準互換モードの html 要素、奇妙なレンダリング モードの body 要素) への参照になります。 コンテナ要素の style.display が「none」に設定されている場合 (IE と Opera を除く)、offsetParent プロパティは null を返します。
構文:
parentObj = element.offsetParent
変数:
・parentObj は、現在の要素のオフセットが計算される要素への参照です。
OffsetParent プロパティのテスト
結論:
DOM 構造階層内の要素も要素も CSS で配置されていない場合 (絶対または相対) [または要素が CSS で配置されている場合、要素がDOM 構造階層内の要素は CSS によって配置されないため、この要素の offsetParent 属性の値はルート要素です。より正確には、この要素のさまざまなオフセット計算 (offsetTop、offsetLeft など) の参照は Body 要素です。 (実際には、標準互換モードか奇妙なモードに関係なく、ルート要素は Body 要素です)
テスト コード 2