<main>

The HTML <main> element represents the main content of the <body> of a document or application. The main content area consists of content that is directly related to, or expands upon the central topic of, a document or the central functionality of an application.

Content categories Flow content, palpable content.
Permitted content Flow content.
Tag omission None; both the starting and ending tags are mandatory.
Permitted parents Any element that accepts flow content other than <article>, <aside>, <footer>, <header>, or <nav>.
Permitted ARIA roles None
DOM interface HTMLElement

Attributes

This element only includes the global attributes.

Usage notes

While the WHATWG living standard for HTML allows multiple <main> elements in a page, the W3C version of the specification does not. In addition, the W3C version of the HTML specification doesn't allow <main> as a descendant of <article>, <aside>, <footer>, <header>, or <nav>.

The content of a <main> element should be unique to the document, excluding any content that is repeated across a set of documents such as sidebars, navigation links, copyright information, site logos, and search forms (unless the document's main function is as a search form).

Example

<!-- other content -->
<main>
  <h1>Apples</h1>
  <p>The apple is the pomaceous fruit of the apple tree.</p>
  <article>
    <h2>Red Delicious</h2>
    <p>These bright red apples are the most common found in many
    supermarkets.</p>
    <p>... </p>
    <p>... </p>
  </article>
  <article>
    <h2>Granny Smith</h2>
    <p>These juicy, green apples make a great filling for
    apple pies.</p>
    <p>... </p>
    <p>... </p>
  </article>
</main>
<!-- other content -->

Specifications

Specification Status Comment
WHATWG HTML Living Standard
The definition of '<main>' in that specification.
Living Standard Removed the restriction about using <main> multiple times in a document, or as a descendent of an <article> element.
HTML 5.1
The definition of '<main>' in that specification.
Recommendation No change from HTML5.
HTML5
The definition of '<main>' in that specification.
Recommendation Initial definition.

Browser compatibility

The <main> element is widely supported. For Internet Explorer 11 and below, it is suggested that an aria role of "main" be added to the <main> element to ensure it is accessible (screen readers like JAWS, used in combination with older versions of Internet Explorer, will be able to understand the semantic meaning of the <main> element once this role attribute is included).

<main role="main">
  ...
</main>

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support Chrome 26 21.0 (21.0) 12 Opera 16 Safari 7
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support 4.4 21.0 (21.0) No support No support 7.1

See also