<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end>
<cite>offsetTop/offsetLeft/offsetParentの闇 - Backstage of theater.js</cite> (<code>2008-11-02 01:56:08 +09:00</code> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://d.hatena.ne.jp/susie-t/20061004/1159942798">http://d.hatena.ne.jp/susie-t/20061004/1159942798</anchor-external>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end>
<cite>offsetLeft,offsetTop,offsetWidthそしてoffsetHeight──静的配置要素の絶対位置を確実に取得する方法について</cite>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://hkom.blog1.fc2.com/blog-entry-503.html">http://hkom.blog1.fc2.com/blog-entry-503.html</anchor-external>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2008-11-02 03:35:50 +00:00</weak>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite>Reverse engineering offsetLeft, offsetTop and offsetParent - Anne’s Weblog</cite> (<time>2009-01-01 17:16:48 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://annevankesteren.nl/2006/05/offset">http://annevankesteren.nl/2006/05/offset</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite>Offset attributes again - Anne’s Weblog</cite> (<time>2009-01-01 17:18:29 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://annevankesteren.nl/2006/06/offset-attributes">http://annevankesteren.nl/2006/06/offset-attributes</anchor-external></p><section><h1><code class="HTMLe" xml:lang="en">body</code> だとどうなるか</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">overflow</anchor></code> 通常時<table><tbody><tr><td></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox3</anchor></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari3</anchor></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera 9.52</anchor></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE7</anchor></td></tr><tr><td></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">無奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">無奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">無奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">無奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offset<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding辺</anchor>)</td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">margin辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offset<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding辺</anchor>)</td><td colspan="3"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor> + <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクロールバー</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">根要素</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">margin辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">client<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td>縦: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>); 横: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td>N/A</td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">client<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor>¶</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Width/Height)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布可視域</anchor></td><td colspan="5"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">margin箱</anchor>左上〜<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor>右下</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Width/Height)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td colspan="3"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布可視域</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布可視域</anchor></td><td colspan="2">(拡張) <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Top/Left)</td><td>○</td><td></td><td></td><td></td><td>○</td><td></td><td>○</td><td></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Top/Left)</td><td></td><td>○</td><td>○</td><td>○</td><td></td><td>○</td><td></td><td>○</td></tr></tbody></table></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">html</anchor></code>, <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code>
共に <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">overflow</anchor>: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll</anchor></code> の時
(<code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">overflow</anchor></code> の項を参照。)<table><tbody><tr><td></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox3</anchor></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera 9.52</anchor></td></tr><tr><td></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">無奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">無奇癖</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offset<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">margin辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offset<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td colspan="2"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor> + <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクロールバー</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">client<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td><td>縦: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>); 横: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">client<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code></td><td colspan="2">☆<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> 可視部 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> 可視部 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border辺</anchor>)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Width/Height)</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布可視域</anchor></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td><td>☆※</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Width/Height)</td><td colspan="3">☆<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor> 内容</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布可視域</anchor></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">documentElement</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Top/Left)</td><td>○</td><td></td><td>○</td><td></td></tr><tr><td><code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor>.<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scroll<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></code> (Top/Left)</td><td></td><td>☆</td><td></td><td>○</td></tr></tbody></table></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> 
凡例:<ul><li>明記していないものはその<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>自体が基準。</li><li>括弧内は座標原点 (左上隅)。括弧省略時はその対象物の左上隅が原点。</li><li><code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scrollTop</anchor></code>/<code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scrollLeft</anchor></code> は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> 
の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクロールバー</anchor>の状態を反映するか否か。</li><li>※: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布</anchor>上の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">箱</anchor> (<code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">absolute</anchor></code> は含むが、
<code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">fixed</anchor></code> は含まない。) の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor>をすべて包含する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">箱</anchor>。</li><li>☆: 2表の異なり。</li><li>¶: top、left に <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code> の <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border-top-width</anchor></code>、
<code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border-left-width</anchor></code> を加算。</li></ul></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end>
注意:<ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE</anchor> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> には <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border箱</anchor>と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor>がある。</li><li>それ以外のブラウザの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> は原則として<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容箱</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクロールバー</anchor>を含まない) を指す。</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布可視域</anchor>: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画布</anchor>のうち、使用されている<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">正</anchor>の領域。</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Safari</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖モード</anchor>は <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">html</anchor></code> と <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code>
の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">箱</anchor>を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> にあわせて伸張する (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">次元</anchor>を明示していない場合)。</li><li>拡張 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor>: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE7</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖モード</anchor>では <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code>
の <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code> が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">viewport</anchor> の <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code>
になる。<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code> の <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">margin</anchor></code> + <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code> + <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding</anchor></code> の領域は <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding</anchor></code> のように扱われるので、これを拡張 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding箱</anchor>と呼ぶ
(<code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code> に相当する部分は描画されない; <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">margin</anchor></code> に相当する部分にも背景色が塗られる)。
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">html</anchor></code> の <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">padding</anchor></code> より外側は無視される。</li></ul></p></section><section><h1><code class="HTMLe" xml:lang="en">body</code> 外の要素だとどうなるか?</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">html</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>に <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">appendChild</anchor></code> してみた。
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://suika.suikawiki.org/~wakaba/-temp/test/dom/element/cssom/offset/">https://suika.suikawiki.org/~wakaba/-temp/test/dom/element/cssom/offset/</anchor-external>
の offset-*-html-child-*。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offsetParent</anchor></code>:</p><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor>3: <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">body</anchor></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera</anchor>9、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WebKit</anchor>: <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</anchor></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE7</anchor>: <code class="JS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">null</anchor></code> (ただし、
<code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">html</anchor></code> に <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">appendChild</anchor></code>
した次の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レンダリング</anchor>の時点で変なエラーが出る。)</li></ul><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">奇癖モード</anchor>の場合や <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">html</anchor></code> に
<code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">background-color</anchor></code> を指定した場合でも変わらず。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offsetTop</anchor></code>、<code class="DOMa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">offsetLeft</anchor></code>:<ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox</anchor>3: <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">top</anchor></code> や <code class="CSS" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">left</anchor></code> の値。</li><li>それ以外: <code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">0</anchor></code>。</li></ul></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> ちなみに <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">getBoundingClientRect</anchor></code> なら <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Firefox3</anchor>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Opera9</anchor> 共正しい値が取れます。</p></section><section><h1>関連</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">getClientRects</anchor></code>, <code class="DOMm" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">getBoundingClientRect</anchor></code>
というのもあります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <cite xml:lang="en"><strong></strong>[<strong></strong>cssom-view<strong></strong>]<strong></strong> Web compatibility of float return values for offsetWidth/Height</cite>
( (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Boris Zbarsky</anchor> 著, <time>2014-07-03 00:21:25 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://lists.w3.org/Archives/Public/www-style/2014Jul/0035.html">http://lists.w3.org/Archives/Public/www-style/2014Jul/0035.html</anchor-external></p></section></body></html>