Naar de inhoud
Gratis naslagwerk over HTML
HTML leren en naslaan
Naslag / Structuur van een pagina

Het element <slot>

Het <slot>-HTML-element is een plaatshouder binnen een webcomponent die u kunt vullen met uw eigen opmaak wanneer de component wordt gebruikt. Hiermee kunt u afzonderlijke DOM-bomen maken en samen presenteren.

Attributen

Dit element bevat de globale attributen.

name

De naam van de slot. Een genoemde slot is een <slot>-element met een name-attribuut, terwijl een ongenoemde slot geen name-attribuut heeft, en de naam standaard de lege tekenreeks is.

Wanneer een shadow-root genoemde slot-toewijzing gebruikt, worden de kindelementen op het hoogste niveau van de host weergegeven in slots waarvan de naam overeenkomt met hun slot-attribuut. Slotnamen moeten uniek zijn per shadow-root: als u twee slots met dezelfde naam heeft, worden alle elementen met een overeenkomend slot-attribuut weergegeven in de eerste slot. Alle kindelementen op het hoogste niveau die geen slot-attribuut hebben, worden weergegeven in de eerste ongenoemde <slot>, ook wel de standaardslot genoemd. De name heeft geen effect als de shadow-root handmatige slot-toewijzing gebruikt.

Zie voor meer informatie shadowrootslotassignment op het <template>-element en Element.attachShadow().

Voorbeelden

Basisgebruik

Deze HTML laat zien hoe een aantal genoemde slots binnen een <template>-element kunnen worden gedeclareerd. Merk op dat deze slots alleen als slots werken wanneer de template binnen een shadow-root wordt gebruikt.

HTML
<template id="element-details-template">
  <style>
    details {
      font-family: "Open Sans Light", "Helvetica", "Arial", sans-serif;
    }
    .name {
      font-weight: bold;
      color: #217ac0;
      font-size: 120%;
    }
    h4 {
      margin: 10px 0 -8px 0;
      background: #217ac0;
      color: white;
      padding: 2px 6px;
      border: 1px solid #cee9f9;
      border-radius: 4px;
    }
    .attributes {
      margin-left: 22px;
      font-size: 90%;
    }
    .attributes p {
      margin-left: 16px;
      font-style: italic;
    }
  </style>
  <details>
    <summary>
      <code class="name">
        &lt;<slot name="element-name">NEED NAME</slot>&gt;
      </code>
      <span class="desc"><slot name="description">NEED DESCRIPTION</slot></span>
    </summary>
    <div class="attributes">
      <h4>Attributes</h4>
      <slot name="attributes"><p>None</p></slot>
    </div>
  </details>
  <hr />
</template>
Opmerking

U kunt dit volledige voorbeeld in actie zien bij element-details (bekijk het live in actie). Daarnaast vindt u een toelichting bij Templates en slots gebruiken.

Technische samenvatting

Inhoudscategorieën Flow-inhoud, frasering-inhoud
Toegestane inhoud Transparant
Gebeurtenissen slotchange
Weglaten van tags Niet toegestaan, zowel de begin- als de eindtag zijn verplicht.
Toegestane bovenliggende elementen Elk element dat frasering-inhoud accepteert
Impliciete ARIA-rol Geen bijbehorende rol
Toegestane ARIA-rollen Geen role toegestaan
DOM-interface HTMLSlotElement

Zie ook

Verwante elementen