Por ejemplo:
<xxx id="myid" ...></xxx>Si ningún código o nadie establece las propiedades css en línea del elemento "xxx", entonces document.getElementById("myid").style.property siempre es igual a ""?
¿Lo aseguran los estándares w3c o todos los navegadores?
En los navegadores basados en Blink, parece que siempre se establece en una cadena vacía.
MDN recomienda borrarlos configurándolos en null , que entonces no es una cadena vacía, pero al probar esto en un navegador basado en parpadeo, parece restablecerse a una cadena vacía. https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/style
En algunos navegadores, cuando no se ha establecido una propiedad CSS, está literalmente undefined , lo que es bastante diferente de null o "" (una cadena vacía).
Puede forzar cierta coherencia entre todos los navegadores y los valores actualizados forzando una cadena vacía.
document.getElementById("myid").style.property || ""CSS está cambiando rápidamente, con nuevas propiedades que aparecen con frecuencia. Como tal, me hizo pensar en lo que sucede en los navegadores basados en parpadeo con propiedades no reconocidas.
La respuesta no es consistente con las propiedades conocidas y, en cambio, no están undefined si no están establecidas. Igualmente, estos se pueden establecer en null .
Recomendaría usar cheques falsos cuando sea apropiado para resolver este problema.