diff --git a/source b/source index 213f90acbef..8db11ea396b 100644 --- a/source +++ b/source @@ -5187,6 +5187,85 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute +
+ Element reference attributes refer to one or more Elements in the document.
+ +The steps to resolve the reference + target on an element element referred to by an element reference attribute + are:
+ +If element does not have a shadow root, or element's
+ shadow root doesn't have a referenceTarget
+ property, return element.
Let referenceTarget be the value of element's shadow
+ root's referenceTarget
property
Let candidate be the first element in element's shadow + root whose ID matches referenceTarget.
+If no such element exists, return null.
Return the result of resolving the reference + target on candidate. +
Single element reference attributes refer to a single Element.
+ +The rules to get the + attr-associated element for an element reference attribute attr and + element element, are:
+ +If the attribute is not specified on element, return null.
If element has an explicitly-set + attr-element which is not null:
+ +If element's explicitly-set + attr-element is a descendant of any of element's + shadow-including ancestors, then let + candidate be element's + explicitly-set attr-element.
+Otherwise, let candidate be null.
Otherwise: + +
Let value be the attribute value.
Let candidate be the first element in element's tree, + in tree order whose ID is value.
+If no such element exists, let candidate be null.
+Return the result of resolving the reference + target on candidate. +
Its reflected target has an explicitly set - attr-element, which is a weak reference to an element or null. It is initially - null.
Its reflected target has an + explicitly set attr-element, which is a weak reference to an element or null. + It is initially null.
Its reflected target reflectedTarget has a get the - attr-associated element algorithm, that runs these steps:
+The getter steps are:
Let element be the result of running reflectedTarget's get - the element.
Let contentAttributeValue be the result of running - reflectedTarget's get the content attribute.
If reflectedTarget's explicitly set attr-element is not - null:
- -If reflectedTarget's explicitly set attr-element is - a descendant of any of element's shadow-including ancestors, then return - reflectedTarget's explicitly set attr-element.
Return null.
Let candidate be the result of running this's + get the attr-associated + element.
Otherwise, if contentAttributeValue is not null, return the first element - candidate, in tree order, that meets the following criteria:
- -candidate's root is the same as element's - root;
candidate's ID is - contentAttributeValue; and
candidate implements T.
If no such element exists, then return null.
-Return null.
Return the result of retargeting candidate + against this.
The getter steps are to return the result of running this's get the - attr-associated element.
The setter steps are:
@@ -8817,10 +8860,10 @@ a.setAttribute('href', 'https://example.com/'); // change the content attributeFor those, specification authors must use the reflected target's - get the attr-associated element and get the - attr-associated elements, respectively. The content attribute presence and value - must not be used as they cannot be fully synchronized with the reflected IDL - attribute.
+ get the attr-associated element + and get the attr-associated elements, respectively. The content attribute + presence and value must not be used as they cannot be fully synchronized with the reflected + IDL attribute.A reflected target's explicitly set attr-element,
explicitly set attr-elements, cached attr-associated
@@ -46424,11 +46467,11 @@ interface HTMLLabelElement : HTMLElement {
be specified to indicate a form control with which the caption is to be associated. If the
attribute is specified, the attribute's value must be the ID of a
labelable element in the same tree as the
- label
element. If the attribute is specified and there is an element in
- the tree whose ID is equal to the value of the for
attribute, and the first such element in tree
- order is a labelable element, then that element is the
- label
element's labeled control.
label
element. If the attribute is specified, the for-associated element is not null, and the for-associated element is a labelable element, then that element is the label
+ element's labeled control.