I am using an iframe in my project and it seems that whenever it loads content on a opacity background - it flashes "white" for around 1 second before correctly appearing.
It seems that it fires loaded event before the jQuery script is ready. I have tried
style="visibility:hidden;" onload="this.style.visibility = 'visible';"
style="display:none" onload="this.style.display = 'block';"
visibility:hidden doesn't actually "hide" the element as such - it still takes up the space it would if it were visible.
display:none actually makes the element completely invisible, as if it doesn't exist.