The slot property of the Element interface returns the name of the shadow DOM slot the element is inserted in.

A slot is a placeholder inside a web component that users can fill with their own markup (see Using templates and slots for more information).

Syntax

var aString = element.slot
element.slot = aString

Value

A DOMString.

Examples

In our simple-template example (see it live), we create a trivial custom element example called <my-paragraph> in which a shadow root is attached and then populated using the contents of a template that contains a slot named my-text.

When <my-paragraph> is used in the document, the slot is populated by a slotable element by including it inside the element with a slot attribute with the value my-text. Here is one such example:

<my-paragraph>
  <span slot="my-text">Let's have some different text!</span>
</my-paragraph>

In our JavaScript file we get a reference to the <span> shown above, then log a reference to the name of the corresponding <slot> element.

let slottedSpan = document.querySelector('my-paragraph span')
console.log(slottedSpan.slot); // logs 'my-text'

Specifications

Specification Status Comment
DOM
The definition of 'slot' in that specification.
Living Standard  

Browser Compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support53 ? ? ? ? ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support5353 ? ? ? ? ?

Document Tags and Contributors

Last updated by: fscholz,