diff --git a/source b/source index 1df0a0cc4b4..06a1ef7b01e 100644 --- a/source +++ b/source @@ -3866,6 +3866,8 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
The following features are defined in CSS Values and Units: ElementInternals { boolean reportValidity(); readonly attribute NodeList labels; + + // Focus management + attribute DOMString focusBehavior; }; dictionary ValidityStateFlags { @@ -68145,6 +68150,19 @@ dictionary ValidityStateFlags { internals's target element is associated with.
+focusBehavior
+ [ = value ]Returns the focus behavior of the
+ internals's target element. Possible values
+ are "default
", "focusable
", and "simple-control
". If an unknown value was set,
+ this returns "focusable
".
Can be set, to change the focus behavior to the new + value.
+Each ElementInternals
has a target element,
@@ -68352,6 +68370,60 @@ dictionary ValidityStateFlags {
submission value.
Each autonomous custom element has focus
+ behavior string, initially "default
". It also
+ can be "focusable
" or "simple-control
". These values have the following
+ impacts:
default
"The element is not focusable by default. The element's focus-related behavior
+ is same as elements like div
, which are not focusable by default.
There are ways for authors to make an element with "default
" focus
+ behavior focusable, e.g., adding a tabindex
or contenteditable
content attribute.
focusable
"The element is focusable by default. The element's focus-related behavior is + same as general focusable elements such as editing + hosts.
simple-control
"The element is focusable by default. The element's focus-related behavior is
+ same as simple controls like button
elements.
Behavior differences between "focusable
" and "simple-control
" depend on the user agent. They
+ might affect sequential focusability, click focusability, or the :focus-visible
pseudo-class.
The focusBehavior
IDL
+ attribute, on getting, must return the focus behavior of
+ this ElementInternals
's target element. On
+ setting, if the new string is one of "default
",
+ "focusable
", or "simple-control
", then set the focus behavior of this ElementInternals
's target element to the given value. Otherwise, set it to "focusable
".
Setting focusBehavior
to
+ an unknown value does not throw because new values might be added in the future, and user agents
+ without support for the new value have to work somehow with documents using the new keyword.
the element's tabindex value is a non-negative integer, or the element is + determined by the user agent to be focusable;
+ +See the description of null tabindex value for the + latter case.
+For focusable areas that are + autonomous custom elements, user agents should + consider the element's focus behavior in determining + whether the element is click focusable or sequentially focusable.
+Elements which are not focusable are not focusable areas, and thus not sequentially focusable and not click focusable.
@@ -73864,7 +73946,7 @@ END:VCARDdefault
".