Obtenez tous les styles css pour un élément DOM (a la Firebug)

Pour un élément DOM, comment obtenir tous les styles spécifiés dans css pour un élément particulier? Est-ce un cas d'itération sur tous les noms de style css?

Ou y a-t-il une manière plus élégante? Comment Firebug le fait-il?

Merci

Vous devriez pouvoir l'obtenir avec getComputedStyle :

var css = window.getComputedStyle(element); for (var i=0; i<css.length; i++) { console.log(css[i] +'='+css.getPropertyValue(""+css[i])) } 

Pour un élément DOM, comment obtenir tous les styles spécifiés dans css pour un élément particulier? Est-ce un cas d'itération sur tous les noms de style css?

Oui, ça l'est.

Ou y a-t-il une manière plus élégante?

Je ne connais pas plus d'élégance (l'élégance est assez élevée sur l'échelle subjective), mais il serait certainement plus court et plus doux si vous utilisiez une bibliothèque comme jQuery, voici une solution à quelqu'un codé pour répondre à une autre question:

Comment puis-je obtenir la liste de tous les attributs CSS élémentaire avec jQuery?

Comment Firebug le fait-il?

Je n'ai aucune idée.

Vous pouvez faire itérer dans tous les styles CSS pour un élément comme celui-ci:

 var myElement = document.getElementById('someId'); var myElementStyle = myElement.style; for(var i in myElementStyle){ // if it's not a number-index, print it out. if(/^[\d]+/.exec(i) == null){ console.log("Style %s = %s", i, myElementStyle[i]); /* * Do other stuff here... */ } }