Web/HTML/Element/content

From Get docs

DeprecatedThis feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.


The HTML <content> element—an obsolete part of the Web Components suite of technologies—was used inside of Shadow DOM as an insertion point, and wasn't meant to be used in ordinary HTML. It has now been replaced by the <slot> element, which creates a point in the DOM at which a shadow DOM can be inserted.

Note: Though present in early draft of the specifications and implemented in several browsers, this element has been removed in later versions of the spec, and should not be used. It is documented here to assist in adapting code written during the time it was included in the spec to work with newer versions of the specification.


Content categories Transparent content.
Permitted content Flow content.
Tag omission None, both the starting and ending tag are mandatory.
Permitted parent elements Any element that accepts flow content.
DOM interface HTMLContentElement

Attributes

This element includes the global attributes.

select
A comma-separated list of selectors. These have the same syntax as CSS selectors. They select the content to insert in place of the <content> element.

Example

Here is a simple example of using the <content> element. It is an HTML file with everything needed in it.

Note: For this code to work, the browser you display it in must support Web Components. See Enabling Web Components in Firefox.


<html>
  <head></head>
  <body>
  <!-- The original content accessed by <content> -->
  <div>
    <h4>My Content Heading</h4>
    <p>My content text</p>
  </div>

  <script>
  // Get the <div> above.
  var myContent = document.querySelector('div');
  // Create a shadow DOM on the <div>
  var shadowroot = myContent.createShadowRoot();
  // Insert into the shadow DOM a new heading and 
  // part of the original content: the <p> tag.
  shadowroot.innerHTML =
   '<h2>Inserted Heading</h2> <content select="p"></content>';
  </script>

  </body>
</html>

If you display this in a web browser it should look like the following.

[[File:../../../../../../media.prod.mdn.mozit.cloud/attachments/2015/02/04/10077/592e0add58b201849762a832b7e1069e/content-example.png|content example]]

Specifications

This element is no longer defined by any specifications.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

content

Deprecated'Non-standard'

Chrome

Full support 35

Edge

Full support 79

Firefox No support 33 — 59

Disabled'

No support 33 — 59

Disabled'

Disabled' From version 33 until version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

IE

No support No

Opera

Full support 26

Safari

No support No

WebView Android

Full support 37

Chrome Android

Full support 37

Firefox Android No support 33 — 59

Disabled'

No support 33 — 59

Disabled'

Disabled' From version 33 until version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

Opera Android

?

Safari iOS

No support No

Samsung Internet Android

Full support 3.0

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Non-standard. Expect poor cross-browser support.'
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.'
Deprecated. Not for use in new websites.
User must explicitly enable this feature.'
User must explicitly enable this feature.


See also