Skip to content

Commit d988764

Browse files
committed
add a background section explaining the story of the various features
1 parent ba69697 commit d988764

2 files changed

Lines changed: 76 additions & 40 deletions

File tree

cssom-view/Overview.html

Lines changed: 59 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -100,73 +100,75 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
100100
<!--begin-toc-->
101101

102102
<ul class=toc>
103-
<li><a href="#conformance"><span class=secno>1. </span>Conformance
103+
<li><a href="#background"><span class=secno>1. </span>Background</a>
104+
105+
<li><a href="#conformance"><span class=secno>2. </span>Conformance
104106
Criteria</a>
105107
<ul class=toc>
106-
<li><a href="#dependencies"><span class=secno>1.1
108+
<li><a href="#dependencies"><span class=secno>2.1
107109
</span>Dependencies</a>
108110

109-
<li><a href="#terminology"><span class=secno>1.2 </span>Terminology</a>
111+
<li><a href="#terminology"><span class=secno>2.2 </span>Terminology</a>
110112
</ul>
111113

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

114-
<li><a href="#the-abstractview-interface"><span class=secno>3. </span>The
116+
<li><a href="#the-abstractview-interface"><span class=secno>4. </span>The
115117
<code title="">AbstractView</code> Interface</a>
116118
<ul class=toc>
117-
<li><a href="#the-media-interface"><span class=secno>3.1 </span>The
119+
<li><a href="#the-media-interface"><span class=secno>4.1 </span>The
118120
<code title="">Media</code> Interface</a>
119121
</ul>
120122

121-
<li><a href="#the-screenview-interface"><span class=secno>4. </span>The
123+
<li><a href="#the-screenview-interface"><span class=secno>5. </span>The
122124
<code title="">ScreenView</code> Interface</a>
123125
<ul class=toc>
124-
<li><a href="#the-screen-interface"><span class=secno>4.1 </span>The
126+
<li><a href="#the-screen-interface"><span class=secno>5.1 </span>The
125127
<code title="">Screen</code> Interface</a>
126128
</ul>
127129

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

131-
<li><a href="#the-elementview-interface"><span class=secno>6. </span>The
133+
<li><a href="#the-elementview-interface"><span class=secno>7. </span>The
132134
<code title="">ElementView</code> Interface</a>
133135
<ul class=toc>
134-
<li><a href="#the-getclientrects"><span class=secno>6.1 </span>The <code
136+
<li><a href="#the-getclientrects"><span class=secno>7.1 </span>The <code
135137
title="">getClientRects()</code> and <code
136138
title="">getBoundingClientRect()</code> methods</a>
137139

138-
<li><a href="#scroll-attributes"><span class=secno>6.2 </span>The <code
140+
<li><a href="#scroll-attributes"><span class=secno>7.2 </span>The <code
139141
title="">scrollTop</code>, <code title="">scrollLeft</code>, <code
140142
title="">scrollWidth</code>, and <code title="">scrollHeight</code>
141143
attributes</a>
142144

143-
<li><a href="#client-attributes"><span class=secno>6.3 </span>The <code
145+
<li><a href="#client-attributes"><span class=secno>7.3 </span>The <code
144146
title="">clientTop</code>, <code title="">clientLeft</code>, <code
145147
title="">clientWidth</code>, and <code title="">clientHeight</code>
146148
attributes</a>
147149
</ul>
148150

149-
<li><a href="#the-htmlelementview-interface"><span class=secno>7.
151+
<li><a href="#the-htmlelementview-interface"><span class=secno>8.
150152
</span>The <code title="">HTMLElementView</code> Interface</a>
151153
<ul class=toc>
152-
<li><a href="#offset-attributes"><span class=secno>7.1 </span>The <code
154+
<li><a href="#offset-attributes"><span class=secno>8.1 </span>The <code
153155
title="">offsetParent</code>, <code title="">offsetTop</code>, <code
154156
title="">offsetLeft</code>, <code title="">offsetWidth</code>, and
155157
<code title="">offsetHeight</code> attributes</a>
156158
</ul>
157159

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

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

164-
<li><a href="#rectangles"><span class=secno>10. </span>Rectangles</a>
166+
<li><a href="#rectangles"><span class=secno>11. </span>Rectangles</a>
165167
<ul class=toc>
166-
<li><a href="#the-clientrectlist-interface"><span class=secno>10.1
168+
<li><a href="#the-clientrectlist-interface"><span class=secno>11.1
167169
</span>The <code title="">ClientRectList</code> Interface</a>
168170

169-
<li><a href="#the-clientrect-interface"><span class=secno>10.2
171+
<li><a href="#the-clientrect-interface"><span class=secno>11.2
170172
</span>The <code title="">ClientRect</code> Interface</a>
171173
</ul>
172174

@@ -176,7 +178,24 @@ <h2 class="no-num no-toc" id=toc>Table of Contents</h2>
176178
</ul>
177179
<!--end-toc-->
178180

179-
<h2 id=conformance><span class=secno>1. </span>Conformance Criteria</h2>
181+
<h2 id=background><span class=secno>1. </span>Background</h2>
182+
183+
<p>Many of the features defined in this specification have been supported
184+
by browsers for a long period of time. The goal of this specification is
185+
to define these features in such a way that they can be implemented by all
186+
browsers in an identical way without differences between no quirks,
187+
limited quirks and no quirks mode, as defined by HTML&nbsp;5. [<cite><a
188+
href="#ref-html5">HTML5</a></cite>]
189+
190+
<p>As well as serving as a specification for that "de facto" standard this
191+
specification also obsoletes DOM Level 2 Views by taking the concepts
192+
defined in that specification, making them more concrete, and integrating
193+
them with the various "de facto" concepts.
194+
195+
<p>Finally, the specification defines a couple of new features that the CSS
196+
WG considers to be useful for authors.
197+
198+
<h2 id=conformance><span class=secno>2. </span>Conformance Criteria</h2>
180199

181200
<p>Everything in this specification is normative except for diagrams,
182201
examples, notes and sections marked non-normative.</p>
@@ -191,7 +210,7 @@ <h2 id=conformance><span class=secno>1. </span>Conformance Criteria</h2>
191210
<p>A conforming user agent implements all the requirements made by this
192211
specification.
193212

194-
<h3 id=dependencies><span class=secno>1.1 </span>Dependencies</h3>
213+
<h3 id=dependencies><span class=secno>2.1 </span>Dependencies</h3>
195214

196215
<p>This specification depends on several definitions and features defined
197216
in the HTML&nbsp;5 specification. [<cite><a
@@ -202,7 +221,7 @@ <h3 id=dependencies><span class=secno>1.1 </span>Dependencies</h3>
202221
href="#ref-dom2events">DOM2Events</a></cite>] [<cite><a
203222
href="#ref-dom3core">DOM3Core</a></cite>]
204223

205-
<h3 id=terminology><span class=secno>1.2 </span>Terminology</h3>
224+
<h3 id=terminology><span class=secno>2.2 </span>Terminology</h3>
206225

207226
<p>The terms <dfn id=html-element>HTML element</dfn>, <dfn
208227
id=view>view</dfn> and <dfn id=default>default view</dfn> are defined by
@@ -234,7 +253,7 @@ <h3 id=terminology><span class=secno>1.2 </span>Terminology</h3>
234253
the <a href="#canvas">canvas</a> that is rendered upon, excluding content
235254
on negative axis.
236255

237-
<h2 id=dom-features><span class=secno>2. </span>DOM Features</h2>
256+
<h2 id=dom-features><span class=secno>3. </span>DOM Features</h2>
238257

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

251-
<h2 id=the-abstractview-interface><span class=secno>3. </span>The <code
270+
<h2 id=the-abstractview-interface><span class=secno>4. </span>The <code
252271
title="">AbstractView</code> Interface</h2>
253272

254273
<p>The <code><a href="#abstractview">AbstractView</a></code> interface is a
@@ -272,7 +291,7 @@ <h2 id=the-abstractview-interface><span class=secno>3. </span>The <code
272291
href="#media">Media</a></code> interface. It <em class=ct>must</em> always
273292
return the same object.
274293

275-
<h3 id=the-media-interface><span class=secno>3.1 </span>The <code
294+
<h3 id=the-media-interface><span class=secno>4.1 </span>The <code
276295
title="">Media</code> Interface</h3>
277296

278297
<pre class=idl>interface <dfn id=media>Media</dfn> {
@@ -316,7 +335,7 @@ <h3 id=the-media-interface><span class=secno>3.1 </span>The <code
316335
<pre><code>var isColorDevice = media.matchMedium("(color)")</code></pre>
317336
</div>
318337

319-
<h2 id=the-screenview-interface><span class=secno>4. </span>The <code
338+
<h2 id=the-screenview-interface><span class=secno>5. </span>The <code
320339
title="">ScreenView</code> Interface</h2>
321340

322341
<p>An object implementing the <code><a
@@ -477,7 +496,7 @@ <h2 id=the-screenview-interface><span class=secno>4. </span>The <code
477496
href="#screen">Screen</a></code> interface. It <em class=ct>must</em>
478497
always return the same object.
479498

480-
<h3 id=the-screen-interface><span class=secno>4.1 </span>The <code
499+
<h3 id=the-screen-interface><span class=secno>5.1 </span>The <code
481500
title="">Screen</code> Interface</h3>
482501

483502
<p>As its name suggests, the <code><a href="#screen">Screen</a></code>
@@ -520,7 +539,7 @@ <h3 id=the-screen-interface><span class=secno>4.1 </span>The <code
520539
<p class=note>Bits allocated to handling transparancy are not taken into
521540
account.
522541

523-
<h2 id=the-documentview-interface><span class=secno>5. </span>The <code
542+
<h2 id=the-documentview-interface><span class=secno>6. </span>The <code
524543
title="">DocumentView</code> Interface</h2>
525544

526545
<p>Objects implementing the <code>Document</code> interface, as defined in
@@ -557,7 +576,7 @@ <h2 id=the-documentview-interface><span class=secno>5. </span>The <code
557576
specification. Hit testing might be defined in a future revision of CSS or
558577
HTML&nbsp;5.
559578

560-
<h2 id=the-elementview-interface><span class=secno>6. </span>The <code
579+
<h2 id=the-elementview-interface><span class=secno>7. </span>The <code
561580
title="">ElementView</code> Interface</h2>
562581

563582
<p>Objects implementing the <code>Element</code> interface, as defined by
@@ -581,7 +600,7 @@ <h2 id=the-elementview-interface><span class=secno>6. </span>The <code
581600

582601
};</pre>
583602

584-
<h3 id=the-getclientrects><span class=secno>6.1 </span>The <code
603+
<h3 id=the-getclientrects><span class=secno>7.1 </span>The <code
585604
title="">getClientRects()</code> and <code
586605
title="">getBoundingClientRect()</code> methods</h3>
587606

@@ -675,7 +694,7 @@ <h3 id=the-getclientrects><span class=secno>6.1 </span>The <code
675694
var exampleHeight = example.height;</code></pre>
676695
</div>
677696

678-
<h3 id=scroll-attributes><span class=secno>6.2 </span>The <code
697+
<h3 id=scroll-attributes><span class=secno>7.2 </span>The <code
679698
title="">scrollTop</code>, <code title="">scrollLeft</code>, <code
680699
title="">scrollWidth</code>, and <code title="">scrollHeight</code>
681700
attributes</h3>
@@ -819,7 +838,7 @@ <h3 id=scroll-attributes><span class=secno>6.2 </span>The <code
819838
</ol>
820839
<!-- for inline boxes offsetWidth and offsetHeight are identical to offset* -->
821840

822-
<h3 id=client-attributes><span class=secno>6.3 </span>The <code
841+
<h3 id=client-attributes><span class=secno>7.3 </span>The <code
823842
title="">clientTop</code>, <code title="">clientLeft</code>, <code
824843
title="">clientWidth</code>, and <code title="">clientHeight</code>
825844
attributes</h3>
@@ -863,7 +882,7 @@ <h3 id=client-attributes><span class=secno>6.3 </span>The <code
863882
href="#padding-edge">padding edge</a> and the <a
864883
href="#border-edge">border edge</a>) otherwise.
865884

866-
<h2 id=the-htmlelementview-interface><span class=secno>7. </span>The <code
885+
<h2 id=the-htmlelementview-interface><span class=secno>8. </span>The <code
867886
title="">HTMLElementView</code> Interface</h2>
868887

869888
<p>Objects implementing the <code>HTMLElement</code> interface, as defined
@@ -883,7 +902,7 @@ <h2 id=the-htmlelementview-interface><span class=secno>7. </span>The <code
883902
href="#htmlelementview">HTMLElementView</a></code> interface are expressed
884903
in <a href="#css-pixel" title="CSS pixel">CSS pixels</a>.
885904

886-
<h3 id=offset-attributes><span class=secno>7.1 </span>The <code
905+
<h3 id=offset-attributes><span class=secno>8.1 </span>The <code
887906
title="">offsetParent</code>, <code title="">offsetTop</code>, <code
888907
title="">offsetLeft</code>, <code title="">offsetWidth</code>, and <code
889908
title="">offsetHeight</code> attributes</h3>
@@ -1028,7 +1047,7 @@ <h3 id=offset-attributes><span class=secno>7.1 </span>The <code
10281047
<var>A</var>.
10291048
</ol>
10301049

1031-
<h2 id=the-rangeview-interface><span class=secno>8. </span>The <code
1050+
<h2 id=the-rangeview-interface><span class=secno>9. </span>The <code
10321051
title="">RangeView</code> Interface</h2>
10331052

10341053
<p>Objects implementing the <code>Range</code> interface, as defined by DOM
@@ -1097,7 +1116,7 @@ <h2 id=the-rangeview-interface><span class=secno>8. </span>The <code
10971116
which the height or width is not zero.
10981117
</ol>
10991118

1100-
<h2 id=the-mouseeventview-interface><span class=secno>9. </span>The <code
1119+
<h2 id=the-mouseeventview-interface><span class=secno>10. </span>The <code
11011120
title="">MouseEventView</code> Interface</h2>
11021121

11031122
<p>Objects implementing the <code>MouseEvent</code> interface, as defined
@@ -1182,9 +1201,9 @@ <h2 id=the-mouseeventview-interface><span class=secno>9. </span>The <code
11821201
href="#mouseeventview-y">y</a></code> attributes are included for
11831202
historical reasons.
11841203

1185-
<h2 id=rectangles><span class=secno>10. </span>Rectangles</h2>
1204+
<h2 id=rectangles><span class=secno>11. </span>Rectangles</h2>
11861205

1187-
<h3 id=the-clientrectlist-interface><span class=secno>10.1 </span>The <code
1206+
<h3 id=the-clientrectlist-interface><span class=secno>11.1 </span>The <code
11881207
title="">ClientRectList</code> Interface</h3>
11891208

11901209
<p>The <code><a href="#clientrectlist">ClientRectList</a></code> object
@@ -1219,7 +1238,7 @@ <h3 id=the-clientrectlist-interface><span class=secno>10.1 </span>The <code
12191238
href="#clientrectlist-item">item()</a></code> method would when invoked
12201239
with that argument.
12211240

1222-
<h3 id=the-clientrect-interface><span class=secno>10.2 </span>The <code
1241+
<h3 id=the-clientrect-interface><span class=secno>11.2 </span>The <code
12231242
title="">ClientRect</code> Interface</h3>
12241243

12251244
<p>Objects implementing the <code><a

cssom-view/Overview.src.html

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,23 @@ <h2 id="toc" class="no-num no-toc">Table of Contents</h2>
7777
<!-- toc -->
7878

7979

80+
<h2 id="background">Background</h2>
81+
82+
<p>Many of the features defined in this specification have been supported
83+
by browsers for a long period of time. The goal of this specification is
84+
to define these features in such a way that they can be implemented by all
85+
browsers in an identical way without differences between no quirks,
86+
limited quirks and no quirks mode, as defined by HTML&nbsp;5.
87+
[<cite><span>HTML5</span></cite>]</p>
88+
89+
<p>As well as serving as a specification for that "de facto" standard this
90+
specification also obsoletes DOM Level 2 Views by taking the concepts
91+
defined in that specification, making them more concrete, and integrating
92+
them with the various "de facto" concepts.</p>
93+
94+
<p>Finally, the specification defines a couple of new features that the
95+
CSS WG considers to be useful for authors.</p>
96+
8097

8198
<h2 id="conformance">Conformance Criteria</h2>
8299

0 commit comments

Comments
 (0)