JS OffsetParent 属性_JavaScript スキルの詳細な分析
js
offsetParent プロパティは、offsetParent を呼び出す要素に最も近い (包含階層内で最も近い) オブジェクトへの参照を返し、CSS で配置されたコンテナ要素です。 このコンテナ要素が CSS で配置されていない場合、offsetParent 属性の値はルート要素 (標準互換モードの html 要素、奇妙なレンダリング モードの body 要素) への参照になります。 コンテナ要素の style.display が「none」に設定されている場合 (IE と Opera を除く)、offsetParent プロパティは null を返します。
構文:
parentObj = element.offsetParent
変数:
・parentObj は、現在の要素のオフセットが計算される要素への参照です。
コードをコピー コードは次のとおりです:
< ;meta http -equiv="Content-Type" content="text/html; charset=UTF-8" />
OffsetParent プロパティのテスト
テスト結果:
Firefox3: "BODY"
Internet Explorer 7: "BODY"
Opera 9.51: "BODY"
Chrome 0.2: "BODY"
Safari 3: 「ボディ」
結論:
DOM 構造階層内の要素も要素も CSS で配置されていない場合 (絶対または相対) [または要素が CSS で配置されている場合、要素がDOM 構造階層内の要素は CSS によって配置されないため、この要素の offsetParent 属性の値はルート要素です。より正確には、この要素のさまざまなオフセット計算 (offsetTop、offsetLeft など) の参照は Body 要素です。 (実際には、標準互換モードか奇妙なモードに関係なく、ルート要素は Body 要素です)
テスト コード 2
コードをコピー コードは次のとおりです: