Qu'est-ce que Générateur de Shadow DOM déclaratif ?
Le Declarative Shadow DOM est une fonctionnalite navigateur qui cree un Shadow DOM a partir du balisage HTML sans JavaScript. Un element template avec l'attribut shadowrootmode a l'interieur d'un element hote indique au navigateur de creer une racine shadow et de la remplir avec le contenu du template. Cela permet le rendu cote serveur de composants web avec du CSS isole, fonctionnant avant le chargement de JavaScript.
Réponse rapide
Le Declarative Shadow DOM cree un DOM encapsule et du CSS isole a partir du balisage HTML sans JavaScript. Utilisez <template shadowrootmode='open'> a l'interieur d'un element hote de composant personnalise. Supporte dans Chrome, Edge et Safari. Incluez du contenu de repli pour Firefox.
Last updated: 2026-05-28
Limites
- Firefox ne supporte pas encore Declarative Shadow DOM. Incluez toujours du contenu de repli.
- Declarative Shadow DOM ne cree la racine shadow et le contenu que lors de l'analyse initiale de la page. Le balisage DSD ajoute dynamiquement n'est pas traite.
- Certains frameworks et bibliotheques JavaScript ne s'integrent pas encore avec Declarative Shadow DOM pour l'hydratation SSR.
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
Comment utiliser cet outil
- Saisissez une balise hote d'element personnalise avec un trait d'union (obligatoire pour les noms d'elements personnalises valides).
- Choisissez le mode de racine shadow ouvert ou ferme - ouvert permet l'acces JavaScript via shadowRoot.
- Ajoutez le contenu HTML interieur avec des elements slot pour la projection de contenu.
- Ajoutez optionnellement du CSS isole qui s'applique uniquement a l'interieur de cette racine shadow.
- Copiez l'extrait et incluez-le dans votre sortie SSR ou HTML statique.
A quoi il sert
- Rendre un composant web avec CSS isole sur le serveur pour qu'il apparaisse immediatement sans JavaScript.
- Creer un widget HTML autonome avec des styles isoles pour l'integration dans n'importe quelle page.
- Construire un composant de site statique avec encapsulation shadow DOM sans etape de build.