Skip to content

Commit 13325d4

Browse files
authored
Merge pull request w3c#15 from majido/fix-link-issues
Fix link issues
2 parents 4207473 + 71e7f80 commit 13325d4

2 files changed

Lines changed: 49 additions & 47 deletions

File tree

index.bs

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,11 @@ url: https://drafts.csswg.org/css-overflow-3/#scroll-container
2121
url: https://www.w3.org/TR/uievents/#default-action
2222
type: dfn; text: default action
2323
type: dfn; text: default actions
24-
url: #local
25-
type: dfn; text: local boundary default action
26-
type: dfn; text: local boundary default actions
2724
url: https://dom.spec.whatwg.org/#dom-event-preventdefault
2825
type: dfn; text: preventDefault
2926
url: https://dom.spec.whatwg.org/#dom-eventtarget-addeventlistener
3027
type: dfn; text: passive flag
28+
3129
</pre>
3230

3331
Introduction {#intro}
@@ -38,10 +36,10 @@ Introduction {#intro}
3836
A content author does not necessarily want <a>scroll chaining</a> to occur for all <a>scroll containers</a>. Some <a>scroll containers</a> may be part of a <a>containing block chain</a> but may serve a different logical purpose in the document and may want to prevent scrolling from continuing up the <a>scroll chain</a>. To achieve this, a content author will install event listeners without the <a>passive flag</a> set and will use <a>preventDefault</a> when there is a risk that scroll chaining will occur. This is detrimental for the following reasons:
3937
* The user agent may in the future introduce new input methods for scrolling that are not supported by the content author's event listeners.
4038
* A non passive event listener will delay scrolling because the user agent will have to wait for the result of the event listener to determine if <a>preventDefault</a> was called causing increased scroll latency.
41-
* When scrolling is performed near the edge of the <a>scroll boundary<a>, the <a>default action</a> may cause both scrolling to the edge of the <a>scroll container</a> and a <a>boundary default action</a>. Calling <a>preventDefault</a> will not only cancel the <a>boundary default action</a> but also the scroll to the edge of the <a>scrollport</a>.
39+
* When scrolling is performed near the edge of the <a>scroll boundary</a>, the <a>default action</a> may cause both scrolling to the edge of the <a>scroll container</a> and a <a>boundary default action</a>. Calling <a>preventDefault</a> will not only cancel the <a>boundary default action</a> but also the scroll to the edge of the <a>scrollport</a>.
4240
* The <a>default action</a> for the event may also provide additional behavior that the author does not want to cancel such as an overscroll affordance. <a>preventDefault</a> doesn't allow the content author to cancel only some of the <a>default actions</a> such as scroll chaining.
4341

44-
Thus, it is not possible for a content author to control <a>scroll chaining</a> and overscroll in a robust, performant and forward compatible way. The <a>scroll-boundary-behavior</a> property fixes this shortcoming.
42+
Thus, it is not possible for a content author to control <a>scroll chaining</a> and overscroll in a robust, performant and forward compatible way. The 'scroll-boundary-behavior' property fixes this shortcoming.
4543

4644
<pre class=example>
4745
A 'position: fixed' left navigation bar may not want to hand off scrolling to the
@@ -57,9 +55,14 @@ Scroll chaining and boundary default actions {#scroll-chaining-and-boundary-defa
5755

5856
A <dfn>scroll chain</dfn> is the order in which scrolling is propagated from one <a>scroll container</a> to another.
5957

60-
<dfn>Scroll boundary</dfn> refers to when the scroll position of a <a>scroll container</a> reaches the edge of the <a>scrollport<a>. If a scroll container has no potential to scroll, because it does not <a>overflow</a> in the direction of the scroll, the element is always considered to be at the scroll boundary.
58+
<dfn>Scroll boundary</dfn> refers to when the scroll position of a <a>scroll container</a> reaches the edge of the <a>scrollport</a>. If a scroll container has no potential to scroll, because it does not <a>overflow</a> in the direction of the scroll, the element is always considered to be at the scroll boundary.
6159

62-
<dfn>Boundary default action</dfn> refers to the user-agent-defined <a>default action</a> performed when scrolling against the edge of the <a>scrollport</a>. A <a>boundary default action</a> is said to be <dfn>local</dfn>, for example overscroll, if it is performed on the <a>scroll container</a> without interacting with the page. Conversely, a <dfn>non-local boundary default action</dfn> will interact with the page such as scroll chaining or a navigation action.
60+
<dfn>Boundary default action</dfn> refers to the user-agent-defined <a>default action</a> performed
61+
when scrolling against the edge of the <a>scrollport</a>. A <dfn>local boundary default action</dfn>
62+
is a <a>boundary default action</a> which is performed on the <a>scroll container</a> without
63+
interacting with the page, for example displaying a overscroll UI affordance. Conversely, a <dfn
64+
>non-local boundary default action</dfn> interacts with the page, for example scroll chaining or a
65+
navigation action.
6366

6467
Overview {#overview}
6568
==========================
@@ -75,8 +78,8 @@ Note: This property should provide guarantees that are, at least, as strong as <
7578

7679
<pre class=propdef>
7780
Name: scroll-boundary-behavior-x, scroll-boundary-behavior-y
78-
Value: ''contain'' | ''none'' | ''auto''
79-
Initial: ''auto''
81+
Value: contain | none | auto
82+
Initial: auto
8083
Applies to: <a>scroll container</a> elements
8184
Inherited: no
8285
Percentages: N/A
@@ -90,8 +93,8 @@ The 'scroll-boundary-behavior-x' property specifies the behavior of the 'scroll-
9093

9194
<pre class=propdef>
9295
Name: scroll-boundary-behavior
93-
Value: ''contain'' | ''none'' | ''auto''
94-
Initial: ''auto''
96+
Value: contain | none | auto
97+
Initial: auto
9598
Applies to: <a>scroll container</a> elements
9699
Inherited: no
97100
Media: visual
@@ -110,11 +113,11 @@ Values have the following meanings:
110113
ancestors along the <a>scroll chain</a> regardless of whether the scroll originated at this
111114
element or one of its descendants. This value must not modify the behavior of how <a>local
112115
boundary default actions</a> should behave, such as overscroll behavior.
113-
114116
<dt><dfn>none</dfn>
115117
<dd>
116-
This value implies the same behavior as <a>contain</a> and in addition this element must also
117-
not perform <a>local boundary default actions</a> such as showing any overscroll affordances.
118+
This value implies the same behavior as <a value for=scroll-boundary-behavior>contain</a> and in
119+
addition this element must also not perform <a>local boundary default actions</a> such as
120+
showing any overscroll affordances.
118121
<dt><dfn>auto</dfn>
119122
<dd>
120123
This value indicates that the user agent should perform the usual <a>boundary default action</a>
@@ -126,7 +129,8 @@ Note: In the case where a user agent does not implement scroll chaining and over
126129
Note: Programmatic scrolling is clamped and can not trigger any <a>boundary default actions</a>.
127130

128131

129-
Security and Privacy Considerations
132+
133+
Security and Privacy Considerations {#security-and-privacy}
130134
===================================
131135
There are no known security or privacy impacts of this feature. The feature may be used to prevent
132136
certain native UI features such as overscroll affordances and overscroll navigations (e.g., pull-

0 commit comments

Comments
 (0)