2

我目前正在一个网站上工作,我希望我的内容 div 在页面加载时以 0 不透明度开始,然后在短时间内淡入 100%。我有这个工作得很好,但是我不确定我如何处理这是最好的方法。

我似乎读过最好不要在 CSS 中将不透明度等设置为零,而是通过 jQuery 将它们设置为零。这样,如果用户没有启用 Javascript,他们仍然能够看到内容。

但是,有时这种方法会出现故障,至少在我的页面上是这样。有时 HTML 会在脚本有机会接管之前加载。这会导致页面最初显示,然后消失,然后根据需要淡出。没什么大不了的,但没有我想要的那么顺利。

有没有更好的方法来处理最初将不透明度设置为零?

网站目前在这里

4

2 回答 2

1

虽然我认为可以忽略禁用 javascript 的用户,但您可以尝试以下操作:

<style>
    #content{
        opacity:0;
    }
</style>

<noscript>
<style>
    #content{
        opacity:1;
    }
</style>
</noscript>
于 2013-08-06T11:48:53.203 回答
0

我会说,把你的jquery放在你通常让它工作的地方,然后添加这个<noscript>标签,当然你不能再在jquery中制作动画了,但是你会让div不透明度然后 100% 在 noscript 标签中

编辑:您可以在 noscript 标记中添加 Joe 的答案中的样式,然后您将有其他解决方案:)

于 2013-08-06T11:48:37.943 回答