diff --git a/source b/source index e20b576fe78..85f1c7a38ed 100644 --- a/source +++ b/source @@ -77527,42 +77527,46 @@ END:VCARD

All HTML elements may have the hidden content attribute set. The hidden attribute is an enumerated attribute. The - following table lists the states for this attribute:

+ data-x="attr-hidden">hidden attribute is an enumerated attribute with the + following keywords and states:

+ - - -
Keyword State - Keywords + Brief description
Until found state - until-found + until-found + hidden until found + Will not be rendered but content inside will be accessible to find-in-page and + fragment navigation
Hidden state The empty string + hidden + Will not be rendered.
hidden + hidden

The attribute's missing value default is the not hidden state, and its invalid value default is the hidden - state.

+ data-x="attr-hidden-not-hidden-state">not hidden state, and its invalid value default is the hidden + state.

-

When an element has the hidden attribute in the hidden state, it indicates that the element is not yet, or +

When an element has the hidden attribute in the hidden state, it indicates that the element is not yet, or is no longer, directly relevant to the page's current state, or that it is being used to declare content to be reused by other parts of the page as opposed to being directly accessed by the user. User agents should not render elements that are in the hidden state. This requirement may be implemented + data-x="attr-hidden-hidden-state">hidden state. This requirement may be implemented indirectly through the style layer. For example, a web browser could implement these requirements using the rules suggested in the Rendering section.

-

When an element has the hidden attribute in the hidden until found state, it indicates that the - element is hidden like the hidden state but the +

When an element has the hidden attribute in the hidden until found state, it indicates that the + element is hidden like the hidden state but the content inside the element will be accessible to find-in-page and fragment navigation. When these features attempt to scroll to a target which is in the element's subtree, the user agent will remove the

Web browsers will use 'content-visibility: hidden' instead of 'display: none' when the hidden attribute is in the hidden until found state, as specified in the hidden until found state, as specified in the Rendering section.

@@ -77583,25 +77587,25 @@ END:VCARD effects of the hidden state. Authors therefore have to take care when writing their style sheets to make sure that the attribute is still styled as expected. In addition, legacy user agents which don't support the hidden until found state will have 'display: none' + data-x="attr-hidden-until-found-state">hidden until found state will have 'display: none' instead of 'content-visibility: hidden', so authors are encouraged to make sure that their style sheets don't change the 'display' or 'content-visibility' properties of hidden until found elements.

Since elements with the hidden attribute in the hidden until found state use 'content-visibility: + data-x="attr-hidden-until-found-state">hidden until found state use 'content-visibility: hidden' instead of 'display: none', there are two caveats of the hidden until found state that make it different - from the hidden state:

+ data-x="attr-hidden-until-found-state">hidden until found state that make it different + from the hidden state:

  1. The element needs to be affected by layout containment in order to be revealed by find-in-page. This means that if the element in the hidden until found state has a 'display' value of + data-x="attr-hidden-until-found-state">hidden until found state has a 'display' value of 'none', 'contents', or 'inline', then the element will not be revealed by find-in-page.

  2. The element will still have a generated box when in - the hidden until found state, which means + the hidden until found state, which means that borders, margin, and padding will still be rendered around the element.

@@ -77684,8 +77688,8 @@ END:VCARD
  1. If the hidden attribute is in the until-found state, then return "until-found".

  2. + data-x="attr-hidden-until-found-state">hidden until found state, then return "until-found".

  3. If the hidden attribute is set, then return true.

  4. @@ -77697,9 +77701,9 @@ END:VCARD
    1. If the given value is a string that is an ASCII case-insensitive match for - "until-found", then set the until-found", then set the hidden attribute to "until-found".

    2. + data-x="attr-hidden-until-found">until-found
      ".

    3. Otherwise, if the given value is false, then remove the hidden attribute.

    4. @@ -81207,12 +81211,12 @@ body { display:none } without modifying the open attribute, in order to make find-in-page able to search through it. Similarly, all HTML elements with the hidden attribute in the hidden until found state should have their hidden until found state should have their skipped contents become accessible without modifying the hidden attribute in order to make find-in-page able to search through them. After find-in-page finishes searching for matches, the details elements and the elements with the hidden attribute in the hidden until found state should have their contents + data-x="attr-hidden-until-found-state">hidden until found state should have their contents become skipped again. This entire process must happen synchronously (and so is not observable to users or to author code). CSSCONTAIN

      @@ -137772,7 +137776,7 @@ interface External { hidden HTML elements Whether the element is relevant - "until-found"; + "until-found"; "hidden"; the empty string