Wat is Declarative Shadow DOM Generator?
Declarative Shadow DOM is een browserfunctie die Shadow DOM creëert uit HTML-opmaak zonder JavaScript. Een template-element met het shadowrootmode-attribuut in een host-element vertelt de browser om een shadow root te maken en deze te vullen met de template-inhoud. Dit maakt server-side rendering van webcomponenten met scoped CSS mogelijk, werkend voordat JavaScript laadt.
Snel antwoord
Declarative Shadow DOM creëert ingekapselde DOM en scoped CSS uit HTML-opmaak zonder JavaScript. Gebruik <template shadowrootmode="open"> binnen een aangepast element host-tag. Ondersteund in Chrome, Edge en Safari. Voeg fallback-inhoud toe voor Firefox.
Last updated: 2026-05-28
Beperkingen
- Firefox ondersteunt Declarative Shadow DOM nog niet (vanaf 2026). Voeg altijd fallback-inhoud toe die wordt weergegeven via CSS wanneer DSD niet wordt ondersteund.
- Declarative Shadow DOM creëert alleen de shadow root en inhoud tijdens de initiële paginaverwerking. Dynamisch toegevoegde DSD-opmaak wordt niet verwerkt - gebruik imperative attachShadow() voor client-side creatie.
- Sommige JavaScript-frameworks en bibliotheken integreren nog niet met Declarative Shadow DOM voor SSR-hydratatie. Controleer framework-ondersteuning voordat u DSD adopteert in een framework-gebaseerde app.
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
Zo gebruik je deze tool
- Voer een aangepaste element host-tag met een koppelteken in (vereist voor geldige aangepaste elementnamen).
- Kies open of gesloten shadow root modus - open staat JavaScript-toegang via shadowRoot toe.
- Voeg de innerlijke HTML-inhoud toe met slot-elementen voor contentprojectie.
- Voeg optioneel scoped CSS toe die alleen binnen deze shadow root van toepassing is.
- Kopieer het fragment en neem het op in uw SSR-uitvoer of statische HTML.
Waarvoor je het kunt gebruiken
- Render een webcomponent met scoped CSS op de server zodat deze onmiddellijk verschijnt zonder JavaScript.
- Maak een zelfstandige HTML-widget met geïsoleerde stijlen voor insluiting in elke pagina.
- Bouw een statische sitecomponent met shadow DOM-inkapseling zonder een build-stap.