Je voudrais saisir l'élément HTML et tous ses computedStyles.
J'ai réussi à le faire fonctionner lorsque l'élément HTML n'a pas d'enfants, mais si l'élément HTML a plusieurs enfants, comment puis-je récupérer tous les computedStyles de chaque enfant ?
Voici ce que j'ai pour l'instant :
- L'utilisateur clique sur un élément HTML, je saisis l'élément HTML en utilisant event.target.cloneNode(true).
- J'attribue ensuite un Id à l'élément cloné
- J'attrape le computedStyle
-
Puis j'ajoute le style à mon élément cloné
private onClickHtmlCssGrabber = (event) => { // clone the html element let clickedHtmlElement = event.target.cloneNode(true)
// set an id to the cloned element clickedHtmlElement.setAttribute('id', 'clonedElement') // get the computed style of the element let clikedHtmlElementStyle = getComputedStyle(event.target).cssText // set the style on my newly cloned element clickedHtmlElement.style.cssText = clikedHtmlElementStyle
}
Donc en gros, à ce stade, je me retrouve avec quelque chose comme :
<div id="clonedElement" style="... all the coputedStyle">Example text</div>
Mais mon problème se pose lorsque l'élément HTML que je veux extraire a de nombreux enfants :
<div class="style1">
<div class="style-child-1">
<div class="style-child-2">
example text child 2
<div>
<div class="style-child-3">
example text child 3
</div>
<div>
</div>
Alors comment puis-je extraire l'élément HTML complet avec ses enfants et leurs styles ?