2009-11-17 14 views

Respuesta

-1

Para un elemento DOM, cómo me sale todos los estilos especificados en CSS para un elemento en particular ? ¿Es un caso de que itera sobre todos los nombres de estilo css?

Sí, lo es.

¿O hay una manera más elegante?

No sé acerca más elegante (elegancia es bastante alto en la escala subjetiva), pero sin duda sería más corto y más dulce si hizo uso de una biblioteca como jQuery, aquí hay un alguien solución codificada para responder a otra pregunta: ¿

How Can I Get List Of All Element CSS Attributes with jQuery?

¿Cómo Firebug lo hacen?

No tengo ni idea.

-1

Se puede recorrer todos los estilos CSS de un elemento como este:

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... 
     */ 
    } 
}
+1

Hi - gracias por la sugerencia - sin embargo, myElementStyle [i] parece ser siempre nulo. Mis estilos están configurados desde css externo, y no en línea –

+1

Asegúrese de esperar para ejecutar este código hasta después de cargar el documento. – JasonWyatt

+6

Esto solo funciona para estilos en línea. – syockit

5

usted debería ser capaz de hacerlo con getComputedStyle:

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