diff --git a/source b/source index 3982175f26f..f5fdf7ff38f 100644 --- a/source +++ b/source @@ -4306,6 +4306,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
aria-describedby
aria-disabled
aria-label
aria-level
Finally, the following terms are defined in ARIA: ARIA
@@ -11954,6 +11955,10 @@ interface HTMLElement : Element { undefined hidePopover(); boolean togglePopover(optional (TogglePopoverOptions or boolean) options = {}); [CEReactions] attribute DOMString? popover; + + // The headingoffset API + [CEReactions] attribute unsigned long headingOffset; + [CEReactions] attribute boolean headingReset; }; dictionary ShowPopoverOptions { @@ -13203,6 +13208,8 @@ https://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20HTML%3E%draggable
enterkeyhint
hidden
headingoffset
headingreset
inert
inputmode
is
h1
–h6
elements have a heading level, which is given
- by the number in the element's name.
h1
–h6
elements have a heading level, which is
+ given by getting the element's computed
+ heading level.
These elements represent headings. The lower a HTMLHeadingElement : HTMLElement {
+ The The The The To get an element's computed heading level, given an element element,
+ perform the following steps: Let level be zero. Let max be zero. If element's local name is If element's local name is If element's local name is If element's local name is If element's local name is If element's local name is Assert: level is not zero. Assert: max is not zero. Add the result of getting an
+ element's computed heading offset given element and max to
+ level. Assert: level is not greather than 9. Return level. To get an element's computed heading offset, given an element element,
+ and a non-negative integer max, perform the following steps. They return a
+ non-negative integer. Let offset be element's If offset is less than zero, set offset to zero. If the Let ancestor be element. While child is not null: Let nextAncestor be the parent node of
+ ancestor within the flat tree. If nextAncestor's Let nextOffset be nextAncestor's If nextOffset is less than zero, set nextOffset to zero. Add nextOffset to offset. If offset is greater than or equal to max, then return
+ max. Return offset. The use of the This example shows a combination of Heading Levels & Offsets
+
+ headingoffset
+ content attribute allows authors to offset heading levels for descendants.headingreset
+ content attribute allows authors to prevent a heading offset computation from traversing beyond
+ this point.headingOffset
IDL attribute must reflect the
+ headingoffset
content attribute. It is
+ clamped to the range [0, 9].headingReset
IDL attribute must reflect the
+ headingreset
content attribute.
+
+
+ h1
then set
+ level to 1 and max to 8.h2
then set
+ level to 2 and max to 7.h3
then set
+ level to 3 and max to 6.h4
then set
+ level to 4 and max to 5.h5
then set
+ level to 5 and max to 4.h6
then set
+ level to 6 and max to 3.
+
+
+ headingoffset
attribute value.headingreset
attribute is present, then
+ return offset.
+
+ headingreset
+ attribute is present, then return offset.headingoffset
attribute value.aria-level
attribute will
+ take precedence over the headings computed level.headingoffset
,
+ headingreset
and aria-level
attributes with comments demonstrating the respective
+ heading levels.
+
+ <body>
+ <main>
+ <h1>This is a heading level 1</h1>
+ <article headingoffset="1">
+ <h1>This is a heading level 2</h1>
+ <section headingoffset="1">
+ <h1>This is a heading level 3</h1>
+ <dialog headingreset>
+ <h1>This is a heading level 1</h1>
+ </dialog>
+ </section>
+ </article>
+ <h1 aria-level="2">This is a heading level 2</h1>
+ </main>
+</body>
Sample outlines