To the extent possible under law, the editors have waived all copyright
and related or neighboring rights to this work.
In addition, as of 20 February 2017,
the editors have made this specification available under the Open Web Foundation Agreement Version 1.0,
which is available at http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0.
Parts of this work may be from another specification document. If so, those parts are instead covered by the license of that specification document.
The goal of this document is to specify an element for contextual headings within values in HTML.
In HTML, headings have long been a source of frustration for developers.
Assigning explicit heading levels is as inefficient and error-prone as writing <li1> or <li2> instead of <li>.
Within changing contexts, like those generated by a CMS, headings often require additional backend tools to determine their appropriate level.
We need contextually aware heading elements.
The <h> element is ideal for situations where the context of a heading may change, either before or after the source is sent to the browser.
2. The h element
The h element defines the heading of sectioning content.
The nesting of the sectioning content indicates the hierarchical level of the heading.
<body><h>This is a top level heading</h><p>...</p><section><h>This is a second-level heading</h><p>...</p></section><section><p>...</p><h>This is another second-level heading</h><p>...</p><section><h>This is a third-level heading</h><p>...</p></section></section></body>
The first descendant h element in sectioning content represents the primary heading for that section.
Subsequent and subsidiary h elements nested within sectioning content represent subheadings, alternative titles, or taglines, allowing the primary heading for sectioning content to be grouped with any secondary headings to form a multi-level heading.
<h>Dr. Strangelove</h><h>Or: How I Learned to Stop Worrying and Love the Bomb</h>
<h>Or: How I Learned to Stop Worrying and Love the Bomb</h></h>
<h><h>Dr. Strangelove<h><h>Or: How I Learned to Stop Worrying and Love the Bomb</h></h>
Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology.
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL”
in the normative parts of this document
are to be interpreted as described in RFC 2119.
However, for readability,
these words do not appear in all uppercase letters in this specification.
All of the text of this specification is normative
except sections explicitly marked as non-normative, examples, and notes. [RFC2119]
Examples in this specification are introduced with the words “for example”
or are set apart from the normative text with class="example", like this:
This is an example of an informative example.
Informative notes begin with the word “Note”
and are set apart from the normative text with class="note", like this: