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. This content 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).
Content categories | Flow content, palpable content. |
---|---|
Permitted content | Flow content. |
Tag omission | None; both the starting and ending tags are mandatory. |
Permitted parent elements | Any element that accepts flow content other than <article> , <aside> , <footer> , <header> , or <nav> element. |
DOM interface | HTMLElement |
Attributes
This element only includes the global attributes.
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. |
HTML5.1 The definition of '<main>' in that specification. |
Working Draft | 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 |
See also
- Basic structural elements:
<html>
,<head>
,<body>
- Section-related elements:
<article>
,<aside>
,<footer>
,<header>
, or<nav>