Sé que puedo establecer un valor CSS a través de JavaScript como:
document.getElementById('image_1').style.top = '100px';
Pero, ¿puedo obtener un valor de estilo específico actual? He leído dónde puedo obtener todo el estilo para el elemento, pero no quiero tener que analizar toda la cadena si no es necesario.
javascript
css
Michael Paul
fuente
fuente
var top = document.getElementById('image_1').style.top;
Puede querer reformularlo si eso no es lo que quiereRespuestas:
Puedes usar
getComputedStyle()
.jsFiddle .
fuente
La propiedad element.style le permite conocer solo las propiedades CSS que se definieron como en línea en ese elemento (mediante programación o definidas en el atributo de estilo del elemento), debe obtener el estilo calculado.
No es tan fácil hacerlo de forma cruzada, IE tiene su propio camino, a través de la propiedad element.currentStyle, y la forma estándar DOM Nivel 2, implementada por otros navegadores es a través del método document.defaultView.getComputedStyle.
Las dos formas tienen diferencias, por ejemplo, la propiedad IE element.currentStyle espera que acceda a los nombres de propiedad CSS compuestos de dos o más palabras en camelCase (por ejemplo, maxHeight, fontSize, backgroundColor, etc.), la forma estándar espera las propiedades con palabras separadas con guiones (por ejemplo, altura máxima, tamaño de fuente, color de fondo, etc.). ......
Referencia principal stackoverflow
fuente
Usa lo siguiente. Me ayudó.
Consulte también Obtener estilos .
fuente
Solución de navegador cruzado para verificar valores CSS sin manipulación DOM:
Uso:
Versión desinfectada (fuerza la entrada del selector a minúsculas y permite el uso sin mayúsculas ".")
fuente
Si lo configura mediante programación, puede llamarlo como una variable (es decir
document.getElementById('image_1').style.top
). De lo contrario, siempre puede usar jQuery:fuente
Si te gustan las bibliotecas, ¿por qué no MyLibrary y getStyle? ?
El método jQuery css tiene un nombre incorrecto, CSS es solo una forma de establecer estilos y no necesariamente representa los valores reales de las propiedades de estilo de un elemento.
fuente
En 2020
Puede usar computedStyleMap ()
La respuesta es válida, pero a veces necesita verificar qué unidad devuelve, puede obtenerla sin ninguna
slice()
osubstring()
cadena.fuente
Como cuestión de seguridad, es posible que desee comprobar que el elemento existe antes de intentar leerlo. Si no existe, su código arrojará una excepción, que detendrá la ejecución en el resto de su JavaScript y posiblemente mostrará un mensaje de error al usuario, lo cual no es bueno. Desea poder fallar con gracia.
fuente
La solución de navegador cruzado sin la manipulación de DOM dada anteriormente no funciona porque proporciona la primera regla de coincidencia, no la última. La última regla coincidente es la que se aplica. Aquí hay una versión funcional:
Sin embargo, esta búsqueda simple no funcionará en el caso de selectores complejos.
fuente