8000 fix a minor issue with SVG and getClientRects() (credit: roc) · w3c/csswg-drafts@49e4583 · GitHub
Skip to content

Commit 49e4583

Browse files
committed
fix a minor issue with SVG and getClientRects() (credit: roc)
1 parent a26d273 commit 49e4583

2 files changed

Lines changed: 79 additions & 74 deletions

File tree

cssom-view/Overview.html

Lines changed: 70 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@
2828

2929
<h1 id=cssom-view-module>CSSOM View Module</h1>
3030

31-
<h2 class="no-num no-toc" id=w3c-doctype>Editor's Draft 24 April 2008</h2>
31+
<h2 class="no-num no-toc" id=w3c-doctype>Editor's Draft 23 January 2009</h2>
3232

3333
<dl>
3434
<dt>This Version:
3535

3636
<dd><a
37-
href="http://www.w3.org/TR/2008/ED-cssom-view-20080424/">http://www.w3.org/TR/2008/ED-cssom-view-20080424/</a>
37+
href="http://www.w3.org/TR/2009/ED-cssom-view-20090123/">http://www.w3.org/TR/2009/ED-cssom-view-20090123/</a>
3838

3939
<dt>Latest Version:
4040

@@ -58,7 +58,7 @@ <h2 class="no-num no-toc" id=w3c-doctype>Editor's Draft 24 April 2008</h2>
5858
<!--begin-copyright-->
5959
<p class=copyright><a
6060
href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright"
61-
rel=license>Copyright</a> &copy; 2008 <a
61+
rel=license>Copyright</a> &copy; 2009 <a
6262
href="http://www.w3.org/"><acronym title="World Wide Web
6363
Consortium">W3C</acronym></a><sup>&reg;</sup> (<a
6464
href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute
@@ -100,9 +100,9 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
100100
<!--begin-toc-->
101101

102102
<ul class=toc>
103-
<li><a href="#background"><span class=secno>1. </span>Background</a>
103+
<li><a href="#background"><span class=secno>1 </span>Background</a>
104104

105-
<li><a href="#conformance"><span class=secno>2. </span>Conformance
105+
<li><a href="#conformance"><span class=secno>2 </span>Conformance
106106
Criteria</a>
107107
<ul class=toc>
108108
<li><a href="#dependencies"><span class=secno>2.1
@@ -111,31 +111,31 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
111111
<li><a href="#terminology"><span class=secno>2.2 </span>Terminology</a>
112112
</ul>
113113

114-
<li><a href="#dom-features"><span class=secno>3. </span>DOM Features</a>
114+
<li><a href="#dom-features"><span class=secno>3 </span>DOM Features</a>
115115

116-
<li><a href="#the-abstractview-interface"><span class=secno>4. </span>The
116+
<li><a href="#the-abstractview-interface"><span class=secno>4 </span>The
117117
<code title="">AbstractView</code> Interface</a>
118118
<ul class=toc>
119119
<li><a href="#the-media-interface"><span class=secno>4.1 </span>The
120120
<code title="">Media</code> Interface</a>
121121
</ul>
122122

123-
<li><a href="#the-screenview-interface"><span class=secno>5. </span>The
123+
<li><a href="#the-screenview-interface"><span class=secno>5 </span>The
124124
<code title="">ScreenView</code> Interface</a>
125125
<ul class=toc>
126126
<li><a href="#the-screen-interface"><span class=secno>5.1 </span>The
127127
<code title="">Screen</code> Interface</a>
128128
</ul>
129129

130-
<li><a href="#the-documentview-interface"><span class=secno>6. </span>The
130+
<li><a href="#the-documentview-interface"><span class=secno>6 </span>The
131131
<code title="">DocumentView</code> Interface</a>
132132

133-
<li><a href="#the-elementview-interface"><span class=secno>7. </span>The
133+
<li><a href="#the-elementview-interface"><span class=secno>7 </span>The
134134
<code title="">ElementView</code> Interface</a>
135135
<ul class=toc>
136-
<li><a href="#the-getclientrects"><span class=secno>7.1 </span>The <code
137-
title="">getClientRects()</code> and <code
138-
title="">getBoundingClientRect()</code> methods</a>
136+
<li><a href="#the-getclientrects-and-getboundingclient"><span
137+
class=secno>7.1 </span>The <code title="">getClientRects()</code> and
138+
<code title="">getBoundingClientRect()</code> methods</a>
139139

140140
<li><a href="#scroll-attributes"><span class=secno>7.2 </span>The <code
141141
title="">scrollTop</code>, <code title="">scrollLeft</code>, <code
@@ -148,7 +148,7 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
148148
attributes</a>
149149
</ul>
150150

151-
<li><a href="#the-htmlelementview-interface"><span class=secno>8.
151+
<li><a href="#the-htmlelementview-interface"><span class=secno>8
152152
</span>The <code title="">HTMLElementView</code> Interface</a>
153153
<ul class=toc>
154154
<li><a href="#offset-attributes"><span class=secno>8.1 </span>The <code
@@ -157,13 +157,13 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
157157
<code title="">offsetHeight</code> attributes</a>
158158
</ul>
159159

160-
<li><a href="#the-rangeview-interface"><span class=secno>9. </span>The
160+
<li><a href="#the-rangeview-interface"><span class=secno>9 </span>The
161161
<code title="">RangeView</code> Interface</a>
162162

163-
<li><a href="#the-mouseeventview-interface"><span class=secno>10.
163+
<li><a href="#the-mouseeventview-interface"><span class=secno>10
164164
</span>The <code title="">MouseEventView</code> Interface</a>
165165

166-
<li><a href="#rectangles"><span class=secno>11. </span>Rectangles</a>
166+
<li><a href="#rectangles"><span class=secno>11 </span>Rectangles</a>
167167
<ul class=toc>
168168
<li><a href="#the-clientrectlist-interface"><span class=secno>11.1
169169
</span>The <code title="">ClientRectList</code> Interface</a>
@@ -178,7 +178,7 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
178178
</ul>
179179
<!--end-toc-->
180180

181-
<h2 id=background><span class=secno>1. </span>Background</h2>
181+
<h2 id=background><span class=secno>1 </span>Background</h2>
182182

183183
<p>Many of the features defined in this specification have been supported
184184
by browsers for a long period of time. The goal of this specification is
@@ -195,7 +195,7 @@ <h2 id=background><span class=secno>1. </span>Background</h2>
195195
<p>Finally, the specification defines a couple of new features that the CSS
196196
WG considers to be useful for authors.
197197

198-
<h2 id=conformance><span class=secno>2. </span>Conformance Criteria</h2>
198+
<h2 id=conformance><span class=secno>2 </span>Conformance Criteria</h2>
199199

200200
<p>Everything in this specification is normative except for diagrams,
201201
examples, notes and sections marked non-normative.</p>
@@ -224,12 +224,13 @@ <h3 id=dependencies><span class=secno>2.1 </span>Dependencies</h3>
224224
<h3 id=terminology><span class=secno>2.2 </span>Terminology</h3>
225225

226226
<p>The terms <dfn id=html-element>HTML element</dfn>, <dfn
227-
id=view>view</dfn> and <dfn id=default>default view</dfn> are defined by
228-
HTML&nbsp;5. [<cite><a href="#ref-html5">HTML5</a></cite>]
227+
id=view>view</dfn> and <dfn id=default-view>default view</dfn> are defined
228+
by HTML&nbsp;5. [<cite><a href="#ref-html5">HTML5</a></cite>]
229229

230-
<p><dfn id=the-html>The HTML <code>body</code> element</dfn> is the first
231-
<code>body</code> <a href="#html-element">HTML element</a> child of the
232-
root <a href="#html-element">HTML element</a> <code>html</code>.
230+
<p><dfn id=the-html-body-element>The HTML <code>body</code> element</dfn>
231+
is the first <code>body</code> <a href="#html-element">HTML element</a>
232+
child of the root <a href="#html-element">HTML element</a>
233+
<code>html</code>.
233234

234235
<p>The terms <dfn id=css-pixel>CSS pixel</dfn>, <dfn
235236
id=content-edge>content edge</dfn>, <dfn id=padding-edge>padding
@@ -249,11 +250,11 @@ <h3 id=terminology><span class=secno>2.2 </span>Terminology</h3>
249250
element's content area, including overflown content. [<cite><a
250251
href="#ref-css21">CSS21</a></cite>]
251252

252-
<p>The term <dfn id=document>document content</dfn> refers to the area on
253-
the <a href="#canvas">canvas</a> that is rendered upon, excluding content
254-
on negative axis.
253+
<p>The term <dfn id=document-content>document content</dfn> refers to the
254+
area on the <a href="#canvas">canvas</a> that is rendered upon, excluding
255+
content on negative axis.
255256

256-
<h2 id=dom-features><span class=secno>3. </span>DOM Features</h2>
257+
<h2 id=dom-features><span class=secno>3 </span>DOM Features</h2>
257258

258259
<p>This specification defines the <a
259260
href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#DOMFeatures">DOM
@@ -267,7 +268,7 @@ <h2 id=dom-features><span class=secno>3. </span>DOM Features</h2>
267268
and user agents supporting parts of the specification might not claim
268269
support for the DOM feature.
269270

270-
<h2 id=the-abstractview-interface><span class=secno>4. </span>The <code
271+
<h2 id=the-abstractview-interface><span class=secno>4 </span>The <code
27 E61 1272
title="">AbstractView</code> Interface</h2>
272273

273274
<p>The <code><a href="#abstractview">AbstractView</a></code> interface is a
@@ -335,13 +336,13 @@ <h3 id=the-media-interface><span class=secno>4.1 </span>The <code
335336
<pre><code>var isColorDevice = media.matchMedium("(color)")</code></pre>
336337
</div>
337338

338-
<h2 id=the-screenview-interface><span class=secno>5. </span>The <code
339+
<h2 id=the-screenview-interface><span class=secno>5 </span>The <code
339340
title="">ScreenView</code> Interface</h2>
340341

341342
<p>An object implementing the <code><a
342343
href="#screenview">ScreenView</a></code> interface represents a <a
343-
href="#view">view</a> for visual media. If the <a href="#default">default
344-
view</a> is visual the <span
344+
href="#view">view</a> for visual media. If the <a
345+
href="#default-view">default view</a> is visual the <span
345346
title=documentview-defaultview>defaultView</span> attribute on the
346347
<code>Document</code> object <em class=ct>must</em> return an object
347348
implementing this interface.
@@ -408,8 +409,8 @@ <h2 id=the-screenview-interface><span class=secno>5. </span>The <code
408409

409410
<li>
410411
<dl>
411-
<dt>If <a href="#document">document content</a> can have overflow to the
412-
right
412+
<dt>If <a href="#document-content">document content</a> can have
413+
overflow to the right
413414

414415
<dd>
415416
<ol>
@@ -422,8 +423,8 @@ <h2 id=the-screenview-interface><span class=secno>5. </span>The <code
422423
<p>If <var title="">x</var> is negative let it be zero.
423424
</ol>
424425

425-
<dt>If <a href="#document">document content</a> can have overflow to the
426-
left (under right-to-left conditions)
426+
<dt>If <a href="#document-content">document content</a> can have
427+
overflow to the left (under right-to-left conditions)
427428

428429
<dd>
429430
<ol>
@@ -439,18 +440,18 @@ <h2 id=the-screenview-interface><span class=secno>5. </span>The <code
439440

440441
<li>
441442
<p>Let <var title="">y</var> be min(<var title="">y</var>, <a
442-
href="#document">document content</a> height - <a
443+
href="#document-content">document content</a> height - <a
443444
href="#viewport">viewport</a> height).
444445

445446
<li>
446447
<p>If <var title="">y</var> is negative let it be zero.
447448

448449
<li>
449450
<p>Align the x-coordinate <var title="">x</var> of the <a
450-
href="#document">document content</a> with the left of the <a
451+
href="#document-content">document content</a> with the left of the <a
451452
href="#viewport">viewport</a> and align the y-coordinate <var
452-
title="">y</var> of the <a href="#document">document content</a> with
453-
the top of the <a href="#viewport">viewport</a>.
453+
title="">y</var> of the <a href="#document-content">document content</a>
454+
with the top of the <a href="#viewport">viewport</a>.
454455
</ol>
455456

456457
<p>When the <dfn id=screenview-scrollto
@@ -539,7 +540,7 @@ <h3 id=the-screen-interface><span class=secno>5.1 </span>The <code
539540
<p class=note>Bits allocated to handling transparancy are not taken into
540541
account.
541542

542-
<h2 id=the-documentview-interface><span 7976 class=secno>6. </span>The <code
543+
<h2 id=the-documentview-interface><span class=secno>6 </span>The <code
543544
title="">DocumentView</code> Interface</h2>
544545

545546
<p>Objects implementing the <code>Document</code> interface, as defined in
@@ -556,7 +557,7 @@ <h2 id=the-documentview-interface><span class=secno>6. </span>The <code
556557
<p>The <dfn id=documentview-defaultview><code>defaultView</code></dfn>
557558
attribute, on getting, <em class=ct>must</em> return an object
558559
implementing the <code><a href="#abstractview">AbstractView</a></code>
559-
interface that is the <a href="#default">default view</a> for this
560+
interface that is the <a href="#default-view">default view</a> for this
560561
document. If there is no default view available this attribute <em
561562
class=ct>must</em> return <code>null</code>.
562563

@@ -595,7 +596,7 @@ <h2 id=the-documentview-interface><span class=secno>6. </span>The <code
595596
are too. Hit testing might be defined in a future revision of CSS or
596597
HTML&nbsp;5.
597598

598-
<h2 id=the-elementview-interface><span class=secno>7. </span>The <code
599+
<h2 id=the-elementview-interface><span class=secno>7 </span>The <code
599600
title="">ElementView</code> Interface</h2>
600601

601602
<p>Objects implementing the <code>Element</code> interface, as defined by
@@ -619,8 +620,8 @@ <h2 id=the-elementview-interface><span class=secno>7. </span>The <code
619620

620621
};</pre>
621622

622-
<h3 id=the-getclientrects><span class=secno>7.1 </span>The <code
623-
title="">getClientRects()</code> and <code
623+
<h3 id=the-getclientrects-and-getboundingclient><span class=secno>7.1
624+
</span>The <code title="">getClientRects()</code> and <code
624625
title="">getBoundingClientRect()</code> methods</h3>
625626

626627
<p>The <code><a
@@ -640,13 +641,14 @@ <h3 id=the-getclientrects><span class=secno>7.1 </span>The <code
640641
<ol>
641642
<li>
642643
<p>If the element on which it was invoked does not have an associated CSS
643-
layout box return an empty <code><a
644+
layout box and is not in the <code>http://www.w3.org/2000/svg</code>
645+
namespace return an empty <code><a
644646
href="#clientrectlist">ClientRectList</a></code> object and stop this
645647
algorithm.
646648

647649
<li>
648-
<p>If the element is in the <code>http://www.w3.org/2000/svg</code>
649-
namespace return a <code><a
650+
<p>If the element does not have an associated CSS layout box and is in
651+
the <code>http://www.w3.org/2000/svg</code> namespace return a <code><a
650652
href="#clientrectlist">ClientRectList</a></code> object containing a
651653
single <code><a href="#clientrect">ClientRect</a></code> object that
652654
describes the bounding box of the element as defined by SVG
@@ -901,7 +903,7 @@ <h3 id=client-attributes><span class=secno>7.3 </span>The <code
901903
href="#padding-edge">padding edge</a> and the <a
902904
href="#border-edge">border edge</a>) otherwise.
903905

904-
<h2 id=the-htmlelementview-interface><span class=secno>8. </span>The <code
906+
<h2 id=the-htmlelementview-interface><span class=secno>8 </span>The <code
905907
title="">HTMLElementView</code> Interface</h2>
906908

907909
<p>Objects implementing the <code>HTMLElement</code> interface, as defined
@@ -938,8 +940,8 @@ <h3 id=offset-attributes><span class=secno>8.1 </span>The <code
938940
<ul>
939941
<li><var>A</var> is the root element.
940942

941-
<li><var>A</var> is <a href="#the-html">the HTML <code>body</code>
942-
element</a>.
943+
<li><var>A</var> is <a href="#the-html-body-element">the HTML
944+
<code>body</code> element</a>.
943945

944946
<li>The computed value of the <code>position</code> property for element
945947
<var>A</var> is <code>fixed</code>.
@@ -961,7 +963,8 @@ <h3 id=offset-attributes><span class=secno>8.1 </span>The <code
961963
<li>The computed value of the <code>position</code> property is not
962964
<code>static</code>.
963965

964-
<li>It is <a href="#the-html">the HTML <code>body</code> element</a>.
966+
<li>It is <a href="#the-html-body-element">the HTML <code>body</code>
967+
element</a>.
965968

966969
<li>The computed value of the <code>position</code> property of
967970
<var>A</var> is <code>static</code> and the ancestor is one of the
@@ -979,17 +982,17 @@ <h3 id=offset-attributes><span class=secno>8.1 </span>The <code
979982

980983
<ol>
981984
<li>
982-
<p>If <var>A</var> is <a href="#the-html">the HTML <code>body</code>
983-
element</a> or does not have an associated CSS layout box return zero
984-
and stop this algorithm.
985+
<p>If <var>A</var> is <a href="#the-html-body-element">the HTML
986+
<code>body</code> element</a> or does not have an associated CSS layout
987+
box return zero and stop this algorithm.
985988

986989
<li>
987990
<p>If the <code><a
988991
href="#htmlelementview-offsetparent">offsetParent</a></code> of
989-
<var>A</var> is <code>null</code> or <a href="#the-html">the HTML
990-
<code>body</code> element</a> return the y-coordinate of the top <a
991-
href="#border-edge">border edge</a> of <var>A</var> and stop this
992-
algorithm.
992+
<var>A</var> is <code>null</code> or <a
993+
href="#the-html-body-element">the HTML <code>body</code> element</a>
994+
return the y-coordinate of the top <a href="#border-edge">border
995+
edge</a> of <var>A</var> and stop this algorithm.
993996

994997
<li>
995998
<p>Return the result of subtracting the y-coordinate of the top <a
@@ -1006,17 +1009,17 @@ <h3 id=offset-attributes><span class=secno>8.1 </span>The <code
10061009

10071010
<ol>
10081011
<li>
1009-
<p>If element <var>A</var> is <a href="#the-html">the HTML
1012+
<p>If element <var>A</var> is <a href="#the-html-body-element">the HTML
10101013
<code>body</code> element</a> or does not have an associated CSS layout
10111014
box return zero and stop this algorithm.
10121015

10131016
<li>
10141017
<p>If the <code><a
10151018
href="#htmlelementview-offsetparent">offsetParent</a></code> of
1016-
<var>A</var> is <code>null</code> or <a href="#the-html">the HTML
1017-
<code>body</code> element</a> return the x-coordinate of the left <a
1018-
href="#border-edge">border edge</a> of <var>A</var> and stop this
1019-
algorithm.
1019+
<var>A</var> is <code>null</code> or <a
1020+
href="#the-html-body-element">the HTML <code>body</code> element</a>
1021+
return the x-coordinate of the left <a href="#border-edge">border
1022+
edge</a> of <var>A</var> and stop this algorithm.
10201023

10211024
<li>
10221025
<p>Return the result of subtracting the x-coordinate of the left <a
@@ -1066,7 +1069,7 @@ <h3 id=offset-attributes><span class=secno>8.1 </span>The <code
10661069
<var>A</var>.
10671070
</ol>
10681071

1069-
<h2 id=the-rangeview-interface><span class=secno>9. </span>The <code
1072+
<h2 id=the-rangeview-interface><span class=secno>9 </span>The <code
10701073
title="">RangeView</code> Interface</h2>
10711074

10721075
<p>Objects implementing the <code>Range</code> interface, as defined by DOM
@@ -1135,7 +1138,7 @@ <h2 id=the-rangeview-interface><span class=secno>9. </span>The <code
11351138
which the height or width is not zero.
11361139
</ol>
11371140

1138-
<h2 id=the-mouseeventview-interface><span class=secno>10. </span>The <code
1141+
<h2 id=the-mouseeventview-interface><span class=secno>10 </span>The <code
11391142
title="">MouseEventView</code> Interface</h2>
11401143

11411144
<p>Objects implementing the <code>MouseEvent</code> interface, as defined
@@ -1220,7 +1223,7 @@ <h2 id=the-mouseeventview-interface><span class=secno>10. </span>The <code
12201223
href="#mouseeventview-y">y</a></code> attributes are included for
12211224
historical reasons.
12221225

1223-
<h2 id=rectangles><span class=secno>11. </span>Rectangles</h2>
1226+
<h2 id=rectangles><span class=secno>11 </span>Rectangles</h2>
12241227

12251228
<h3 id=the-clientrectlist-interface><span class=secno>11.1 </span>The <code
12261229
title="">ClientRectList</code> Interface</h3>

0 commit comments

Comments
 (0)