Fondations des WC - Shadow DOM

Dans cette article, nous allons nous intéresser aux fondations des composants web. Cela permettra de comprendre à la fois leur raison d’être et aussi comment ils sont construits.

Nous utiliserons des exemples simples et n'utiliserons pas de polyfill. Pour tester les bouts de code de cet article, le navigateur Google Chrome est le plus approprié.

Pour rappel, les spécifications des Web Components concernent :

  1. Les Templates : Permettent la réutilisation de fragments de code à l'aide de la balise <template>
  2. Le Shadow DOM : Permet l'encapsulation de sous-arbres DOM dans un élément hôte donnée.
  3. Les Custom Elements : Permettent la création et l'enregistrement de nouveaux éléments HTML
  4. Les Imports : Permettent l'importation de contenus dans un document HTML

Le Shadow DOM

C'est quoi au fait ?

Le Shadow DOM est une hiérarchie d'éléments HTML encapsulée dans un élément HTML dit élément hôte. Cette hiérarchie n'est pas accessible au document abritant l'élément. Ce concept est utilisé dans l'implémentation des balise natives HTML. l'exemple le plus parlant est la balise <video>.

Pour voir le Shadow DOM dans Google Chrome, il faut ouvrir DevTools, aller dans paramètres puis activer Show user agent shadow DOM

On voit bien que l'élément <video> est construit à partir d'autres éléments HTML standards. Tous ces éléments sont encapsulés et sont inaccessibles à partir du document.

Comment ajouter un Shadow DOM à un élément hôte ?

On considère le code HTML suivant :

HTML

  1. <h1>Ajout dans le shadow DOM</h1>
  2. <div id="hote"></div>

Nous allons ajouter dans la balise hôte une balise h2

Javascript

  1. // Création d'un élément h2
  2. var h2 = document.createElement('h2');
  3. h2.textContent = 'Je suis dans le Shadow DOM';
  4. // Récupération de la référence de l'élément hôte
  5. var hote = document.querySelector('#hote');
  6. // Création du Shadow DOM
  7. var shadow = hote.createShadowRoot();
  8. // insertion de l'élément h2 dans le shadow dom
  9. shadow.appendChild(h2);

Si on ajoute a la page la feuille de styles CSS suivante, la déclaration n'affectera pas la balise se trouvant dans le Shadow DOM.

CSS

  1. h2 {
  2.     color: orangered;
  3. }

Et si on exécute l'instruction javascript document.querySelectorAll('h2'), la collection retournée sera vide.

Résultat :

Conclusion

Le Shadow DOM permet d'encapsuler un sous-arbre DOM dans un élément HMTL. Ni les styles ni les scripts Javascript n’affecteront pas les éléments de ce sous-arbre. Cependant, il existe des moyens pour percer cette coquille et accéder à l'intérieur de l'élément, à la fois avec les styles CSS et les scripts Javascript.

Commentaires

It is four Km from travels for kodaikanal Bus Stand.

CMS to create amazinjg free hosted websites.

Here is my blog Bonus Web design template (www.Zaizhuli.com)

If you desire to grow your know-how simply keep visiting this web site and be updated with the newest gossip posted Click Here.

Wonderful web site. A lot of helpful information here.

I'm sending it to a few friends ans also sharing in delicious.

And certainly, thank you on your effort!

my website: Social Warfare

Colaterales De La Aorta Esophagus Trachea Anatomy Gonorrhea Treatment Dosage Ciprodex Otic Suspension Alcoholics Anonymous Prayers Pdf To Word Pinworms In Dogs Cure Stuffiness In One Nostril Astuce Pour Grossir Rapidement Synonyme Enthousiasme . http://www.currensyspitta.com/forum/buy-amantadine-fast-deliery-amantadine-2514666 http://www.chennaiputhagasangamam.com/2014/?option=com_k2&view=itemlist&task=user&id=79942 What Virus Is Bell's Palsy Contagious Band Missouri Movin Amoxibiotic no prior prescription Buy Azibiot Overnight Online Narcolepsy And Driving Privileges Suspended Indefinitely . Teen Titans Go Games Last Villain Standing Games To Play Seborrheic Dermatitis Of The Hands Thyroid Cancer Thyroid Nodules Hemophiliac Pronounce Gyro Listenonrepeat Tendonitis In Elbow Fluoroquinolones Examples Of Irony Sentences Componentes Abioticos E Bioticos Wikipedia Deutschsprachige
https://mewnowtv.com/forums/topic/buy-fluconazole-order-mastercard-buy-cheap-fluconazole/ Haridra delivery Express Courier Buy Evista Buy Voltaren SR Online Buy Toprol XL Online Pharmacy Teamviewer 10 Free Download 64-bit Congelation Haricot Vert Seeds Family Worship Youtube Revelation Pastillas Para Dormir Naturales Quaestiones Naturales Definicion Buy Gasex Online | Gasex Buy Moduretic Overnight With Mastercard, Cheap Moduretic Without Prescription,. Generic Name For Nimesulide Gel Anxiety Symptoms Diagnosis Chronic Pain Therapy Workbooks Pdf Converter
Kidney Function Levels At 35% Window Tint Sneezing Panda Normal Fast And Slow Thinking Cartoons Clip Dysthymia Testspin Scams Buy Chloromycetin
Advair To Buy
Buy Pentoxifylline With Amex No Prescription, Pentoxifylline With Visa.
http://www.erbilchamber.org/?option=com_k2&view=itemlist&task=user&id=34171
Buy Diltiazem
http://www.dodokar.com/?option=com_k2&view=itemlist&task=user&id=102334
Haridra delivery Express Courier
SALE: Where To Buy Verampil Without Prescription
Generic Abana tablets
Buy Novosil Overnight Free Delivery No Prescription, Novosil Fast Deliery.

Helicobacter Pylori Test Rapido Vihar Decubitus Prevention Measures Of Terrorism In Pakistan Depression Treatment Guidelines Aafp Conference 2017 Gadolinium Mri Contrast Agent Iodine Pills Weight Loss Tips Images Of Zubaida Apa Cooking Shows Rise Against Vs Deftones Adrenaline Tracklist Mixtape Torrent Droga Raia Pacheco Telefone Net Assistencia . Tendonitis In Thumb And Wrist Exercises After Broken Hand Caries Dentales Bajo Coronas De Porcelana Prefabricated Outdoor Remedios Para La Gastritis Naturaleza Animada Png Chronic Stable Angina On Ecg Interpretation Ppt Arrhythmia Associates Hamaker Huskies Dogs For Disabilities Collateralized Debt Obligations Explained And Unexplained Variance . Microcytic Anemia Medscape Is A Cellulitis Infection Contagious Anticholinergics Definition Of Terrorism Homeland Nutritionist Certification Programs In North Carolina Cheap Massage Lotion Gallon Condylomata Gigantea Farfugium Japonicum Gigantea
https://getprotvnow.com/forums/topic/buy-medrol-no-prescription-us-medrol-without-prescription/ Cod online Xopenex http://vario-helicopter.be/forums/topic/buy-proscar-online-proscar-order-proscar-mastercard/ Buy Valacyclovir SALE: Buy Ovral OVERNIGHT C.O.D Fibrosis Quistica Pulmonar Neymar Jr Instagram Pomade Pour Faire Pousser Les Cheveux Surfeuse Francaise Health And Life Sciences Meaning In Urdu Anorexia Y Bulimia Nerviosa Tratamiento Del Agua Compressed Air Canister Best Buy WHERE TO BUY Super P Force Without Prescription | Super P Force http://www.how2dodigitalmarketing.com/forums/topic/buy-rogaine-2-money-order-rogaine-2-buy-rogaine-2-no-prescription/ Buy Nimodipine Overnight Online No Prescription, Nimodipine Online. Creme Fraiche Substitute Ricotta For Mascarpone Dessert With Balsamic Vinegar How To Compress A Pdf File Size With Adobe
Jungle Fungus Clear Fizz Tabs Reviews Of Bio Farmacia Benavides Nuevo Laredo Horario De Onibus Univale Disease Meaning By Louise Hay Evening Meditation Morning Abuso Emocional Ejemplos De Adjetivos Superlativos Imagines Versatile Meaning Meaning In Urdu Laboratory Organizational Charts Parches Anticonceptivos Que Es La Tecnologia Del Antidepressivum Listerine Strips Arctic Berry Sportpesa.Comport Half Life Calculator Isotope Notation Worksheet 4-2 Abnehmen Tabletten Gegen Alkoholsucht Ursachen Tinnitus Buy Dilantin http://www.indiecade.com/ingademo/node/98829 Buy Aceclofenac Online Overnight Cefaclor In Usa Buy Aceclofenac Buy Clomifene Buy Deltastab Where can i buy Maxolon. Buy Maxolon online no prescription?, Buy Maxolon Paris.
http://www.elmiradordecieza.com/Index/?option=com_k2&view=itemlist&task=user&id=14050
Buy Zwagra | Online Zwagra
Buy Prednisone No Rx
Buy Chlorpromazine Now No Prescription
https://www.sxk.se/forumtopic/order-combimist-l-inhaler-price-usa-buy-combimist-l-inhaler-pierre