带有 style.display none 的 DIV 仍然显示

问题描述 投票:0回答:4

加载页面时,我有一些隐藏了一些图层的 JavaScript 代码

document.getElementById(layerName).style.display = "none";

一切正常,但在 IE 和 Opera 中,这些 DIV 会在页面加载时的前几毫秒内显示。之后就恢复正常了

有办法解决吗?

谢谢!

javascript css
4个回答
2
投票

如果您在页面加载时运行代码,则在页面加载完成之前它不会运行。

相反,您可以将代码放在元素下方的

<script>
块中,而不处理
onload

或者你只使用CSS。


1
投票

您可以在 HTML 代码中将 display 设置为 false


1
投票

有办法解决吗?

这就是CSS:

.layer {
display:'none';
}

出现此问题的原因是浏览器呈现页面的方式。 CSS 先于 Javascript。因此,尽可能尝试在 CSS 中执行操作。


0
投票

将此脚本放置在 div 的正下方。你几乎就能解决问题了

© www.soinside.com 2019 - 2024. All rights reserved.