Skip to content

Commit 5af5ead

Browse files
committed
[cssom-view] Add caniuse panel for 'scroll-behavior' property
Fixes w3c#1194.
1 parent 1100ce0 commit 5af5ead

1 file changed

Lines changed: 27 additions & 55 deletions

File tree

cssom-view/Overview.bs

Lines changed: 27 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,7 @@ spec:html; type:dfn; text:case-sensitive
9696

9797
<script src=https://resources.whatwg.org/file-issue.js async data-file-issue-url="https://github.com/w3c/csswg-drafts/issues/new?title=%5Bcssom-view%5D%20"></script>
9898

99-
Background {#background}
100-
========================
99+
<h2 id=background>Background</h2>
101100

102101
Many of the features defined in this specification have been supported
103102
by browsers for a long period of time. The goal of this specification is
@@ -108,8 +107,7 @@ are not you can bug us!)
108107

109108

110109

111-
Terminology {#terminology}
112-
==========================
110+
<h2 id=terminology>Terminology</h2>
113111

114112
Terminology used in this specification is from
115113
DOM,
@@ -341,24 +339,21 @@ e.g. the author can't change the behavior by overriding attributes or methods wi
341339
Unless otherwise stated, string comparisons are done in a <a>case-sensitive</a> manner.
342340

343341

344-
CSS pixels {#css-pixels}
345-
------------------------
342+
<h3 id=css-pixels>CSS pixels</h3>
346343

347344
All coordinates and dimensions for the APIs defined in this
348345
specification are in <a lt=px value>CSS pixels</a>, unless otherwise specified. [[!CSS-VALUES]]
349346

350347
Note: This does not apply to e.g. {{matchMedia()}} as the units are explicitly given there.
351348

352349

353-
Zooming {#zooming}
354-
------------------
350+
<h3 id=zooming>Zooming</h3>
355351

356352
There are two kinds of zoom, <dfn>page zoom</dfn> which affects the size of the initial viewport<!-- XXX ref -->, and <dfn>pinch zoom</dfn> which acts like
357353
a magnifying glass and does not affect the initial viewport<!-- XXX ref --> or actual viewport<!-- XXX ref -->. [[!CSS-DEVICE-ADAPT]]
358354

359355

360-
Web-exposed screen information {#web-exposed-screen-information}
361-
----------------------------------------------------------------
356+
<h3 id=web-exposed-screen-information>Web-exposed screen information</h3>
362357

363358
User agents may choose to hide information about the screen of the output device, in order to
364359
protect the user's privacy. In order to do so in a consistent manner across APIs, this specification
@@ -377,14 +372,12 @@ The <dfn export>Web-exposed available screen area</dfn> is one of the following:
377372
* The area of the <a>viewport</a>, in <a lt=px value>CSS pixels</a>.
378373

379374

380-
Common Infrastructure {#common-infrastructure}
381-
==============================================
375+
<h2 id=common-infrastructure>Common Infrastructure</h2>
382376

383377
This specification depends on the WHATWG Infra standard. [[!INFRA]]
384378

385379

386-
Scrolling {#scrolling}
387-
----------------------
380+
<h3 id=scrolling>Scrolling</h3>
388381

389382
When a user agent is to <dfn>perform a scroll</dfn> of a <a>scrolling box</a> <var>box</var>,
390383
to a given position <var>position</var>,
@@ -428,18 +421,15 @@ To <dfn>scroll to the beginning of the document</dfn> for a document <var>docume
428421
Note: This algorithm is used when navigating to the <code>#top</code> fragment identifier, as defined in HTML. [[!HTML]]
429422

430423

431-
WebIDL values {#webidl-values}
432-
------------------------------
424+
<h3 id=webidl-values>WebIDL values</h3>
433425

434426
When asked to <dfn>normalize non-finite values</dfn> for a value <var>x</var>,
435427
if <var>x</var> is one of the three special floating point literal values
436428
(<code>Infinity</code>, <code>-Infinity</code> or <code>NaN</code>),
437429
then <var>x</var> must be changed to the value <code>0</code>. [[!WEBIDL]]
438430

439431

440-
Extensions to the {{Window}} Interface {#extensions-to-the-window-interface}
441-
============================================================================
442-
432+
<h2 id=extensions-to-the-window-interface>Extensions to the {{Window}} Interface</h2>
443433

444434
<pre class=idl>
445435
enum ScrollBehavior { "auto", "instant", "smooth" };
@@ -661,8 +651,7 @@ The <dfn attribute for=Window caniuse=devicepixelratio>devicePixelRatio</dfn> at
661651
1. Return the result of dividing <var>CSS pixel size</var> by <var>device pixel size</var>.
662652

663653

664-
The <var ignore>features</var> argument to the {{Window/open()}} method {#the-features-argument-to-the-open()-method}
665-
--------------------------------------------------------------------------------------------------------------
654+
<h3 id=the-features-argument-to-the-open()-method>The <var ignore>features</var> argument to the {{Window/open()}} method</h3>
666655

667656
HTML defines the {{Window/open()}} method. This section defines behavior for position and size given
668657
in the <var ignore>features</var> argument. [[!HTML]]
@@ -738,8 +727,7 @@ A <dfn export>supported <code>open()</code> feature name</dfn> is one of the fol
738727
</dl>
739728

740729

741-
The {{MediaQueryList}} Interface {#the-mediaquerylist-interface}
742-
----------------------------------------------------------------
730+
<h3 id=the-mediaquerylist-interface>The {{MediaQueryList}} Interface</h3>
743731

744732
This section integrates with the <a spec=html>event loop</a> defined in HTML. [[!HTML]]
745733

@@ -884,8 +872,7 @@ The <dfn attribute for=MediaQueryListEvent>matches</dfn> attribute must return t
884872
<td>Fired at the {{MediaQueryList}} when the <a>matches state</a> changes.
885873
</table>
886874

887-
The {{Screen}} Interface {#the-screen-interface}
888-
------------------------------------------------
875+
<h3 id=the-screen-interface>The {{Screen}} Interface</h3>
889876

890877
As its name suggests, the {{Screen}} interface represents information about the screen of the output device.
891878

@@ -945,8 +932,7 @@ Note: Some non-conforming implementations are known to return 32 instead of 24.
945932
</pre>
946933
</div>
947934

948-
Extensions to the {{Document}} Interface {#extensions-to-the-document-interface}
949-
================================================================================
935+
<h2 id=extensions-to-the-document-interface>Extensions to the {{Document}} Interface</h2>
950936

951937
<pre class=idl>
952938
partial interface Document {
@@ -1051,8 +1037,7 @@ or having to invoke a scroll to see which element scrolls the viewport.
10511037
Note: <a>The HTML <code>body</code> element</a> is different from HTML's <code>document.body</code>
10521038
in that the latter can return a <code>frameset</code> element.
10531039

1054-
The {{CaretPosition}} Interface {#the-caretposition-interface}
1055-
--------------------------------------------------------------
1040+
<h3 id=the-caretposition-interface>The {{CaretPosition}} Interface</h3>
10561041

10571042
A <dfn>caret position</dfn> gives the position of a text insertion point indicator. It always has an associated
10581043
<dfn>caret node</dfn>, <dfn>caret offset</dfn>, and <dfn>caret range</dfn>. It is represented by a {{CaretPosition}} object.
@@ -1085,8 +1070,7 @@ aborting on the first step that returns a value:
10851070

10861071
Note: This {{DOMRect}} object is not <a spec=html>live</a>.
10871072

1088-
Extensions to the {{Element}} Interface {#extension-to-the-element-interface}
1089-
=============================================================================
1073+
<h2 id=extension-to-the-element-interface>Extensions to the {{Element}} Interface</h2>
10901074

10911075
<pre class=idl>
10921076
enum ScrollLogicalPosition { "start", "center", "end", "nearest" };
@@ -1312,8 +1296,7 @@ The <dfn attribute for=Element>clientHeight</dfn> attribute must run these steps
13121296
1. Return the height of the <a>padding edge</a> excluding the height of any rendered scrollbar between the <a>padding edge</a> and the <a>border edge</a>, ignoring any <a>transforms</a> that apply to the element and its ancestors.
13131297

13141298

1315-
{{Element}} Scrolling Members {#element-scrolling-members}
1316-
----------------------------------------------------------
1299+
<h3 id=element-scrolling-members>{{Element}} Scrolling Members</h3>
13171300

13181301
To <dfn>scroll an element into view</dfn> <var>element</var>,
13191302
with a {{ScrollIntoViewOptions}} dictionary <var>options</var>,
@@ -1401,8 +1384,7 @@ To <dfn>scroll an element</dfn> <var>element</var> to <var>x</var>,<var>y</var>
14011384

14021385

14031386

1404-
Extensions to the {{HTMLElement}} Interface {#extensions-to-the-htmlelement-interface}
1405-
======================================================================================
1387+
<h2 id=extensions-to-the-htmlelement-interface>Extensions to the {{HTMLElement}} Interface</h2>
14061388

14071389
<pre class=idl>
14081390
partial interface HTMLElement {
@@ -1460,8 +1442,7 @@ The <dfn attribute for=HTMLElement>offsetHeight</dfn> attribute must return the
14601442
1. Return the <a>border edge</a> height of the first <a>CSS layout box</a> associated with the element, ignoring any <a>transforms</a> that apply to the element and its ancestors.
14611443

14621444

1463-
Extensions to the {{HTMLImageElement}} Interface {#extensions-to-the-htmlimageelement-interface}
1464-
================================================================================================
1445+
<h2 id=extensions-to-the-htmlimageelement-interface>Extensions to the {{HTMLImageElement}} Interface</h2>
14651446

14661447
<pre class=idl>
14671448
partial interface HTMLImageElement {
@@ -1479,8 +1460,7 @@ first <a>CSS layout box</a> associated with the element, relative to the <a>init
14791460
<a>transforms</a> that apply to the element and its ancestors, or zero if there is no <a>CSS layout box</a>.
14801461

14811462

1482-
Extensions to the {{Range}} Interface {#extensions-to-the-range-interface}
1483-
==========================================================================
1463+
<h2 id=extensions-to-the-range-interface>Extensions to the {{Range}} Interface</h2>
14841464

14851465
<pre class=idl>
14861466
partial interface Range {
@@ -1520,8 +1500,7 @@ algorithm:
15201500

15211501
Note: The {{DOMRect}} object returned by {{Range/getBoundingClientRect()}} is not <a spec=html>live</a>.
15221502

1523-
Extensions to the {{MouseEvent}} Interface {#extensions-to-the-mouseevent-interface}
1524-
====================================================================================
1503+
<h2 id=extensions-to-the-mouseevent-interface>Extensions to the {{MouseEvent}} Interface</h2>
15251504

15261505
Issue: The object IDL fragment redefines some members. Can we resolve this somehow?
15271506

@@ -1593,8 +1572,7 @@ The <dfn attribute for=MouseEvent>offsetY</dfn> attribute must follow these step
15931572
1. Return the value of the event's {{MouseEvent/pageY}} attribute.
15941573

15951574

1596-
Geometry {#geometry}
1597-
====================
1575+
<h2 id=geometry>Geometry</h2>
15981576

15991577
<h3 id="the-geometryutils-interface" class=atrisk>The {{GeometryUtils}} Interface</h3>
16001578

@@ -1669,11 +1647,9 @@ method must run the following steps:
16691647
</ol>
16701648

16711649

1672-
Events {#events}
1673-
================
1650+
<h2 id=events>Events</h2>
16741651

1675-
Resizing viewports {#resizing-viewports}
1676-
----------------------------------------
1652+
<h3 id=resizing-viewports>Resizing viewports</h3>
16771653

16781654
This section integrates with the <a spec=html>event loop</a> defined in HTML. [[!HTML]]
16791655

@@ -1688,8 +1664,7 @@ When asked to <dfn>run the resize steps</dfn> for a {{Document}} <var>doc</var>,
16881664
at the {{Window}} object associated with <var>doc</var>.
16891665

16901666

1691-
Scrolling {#scrolling-events}
1692-
----------------------
1667+
<h3 id=scrolling-events>Scrolling</h3>
16931668

16941669
This section integrates with the <a spec=html>event loop</a> defined in HTML. [[!HTML]]
16951670

@@ -1717,8 +1692,7 @@ When asked to <dfn>run the scroll steps</dfn> for a {{Document}} <var>doc</var>,
17171692
1. Empty <var>doc</var>'s <a>pending scroll event targets</a>.
17181693

17191694

1720-
Event summary {#event-summary}
1721-
------------------------------
1695+
<h3 id=event-summary>Event summary</h3>
17221696

17231697
<i>This section is non-normative.</i>
17241698

@@ -1742,13 +1716,11 @@ Event summary {#event-summary}
17421716
<td>Fired at the {{Document}} or element when the <a>viewport</a> or element is scrolled, respectively.
17431717
</table>
17441718

1745-
CSS properties {#css-properties}
1746-
================================
1719+
<h2 id=css-properties>CSS properties</h2>
17471720

17481721
Issue: The features in this section should be moved to some other specification.
17491722

1750-
Smooth Scrolling: The 'scroll-behavior' Property {#smooth-scrolling}
1751-
--------------------------------------------------------------------
1723+
<h3 id=smooth-scrolling caniuse=css-scroll-behavior>Smooth Scrolling: The 'scroll-behavior' Property</h3>
17521724

17531725
<pre class=propdef>
17541726
Name: scroll-behavior

0 commit comments

Comments
 (0)