图像闪烁和预防。 适当的编码标准
最近我一直在处理一些基本的动画,并试图在同一时间遵循良好的网络实践。 我遇到的问题是在页面加载之前不使用预设的css方法隐藏元素时图像闪烁。
只需用我的普通css隐藏元素,然后用javascript显示它就很容易防止闪烁,但在我看来,如果有人禁用javascript,那在我看来这是一种可怕的做法。
我是否应该使用将<noscript>
标记放在标题中的HTML5功能,然后使用单独的样式表将不透明度和位置设置为没有javascript的用户的最终设置? 这是最优雅的解决方案吗?
我已经开始在TweenLite.from
使用greensock(gsap)库,因为我可以将所有内容都设置为css中的最终状态,但是在第一次加载页面时会出现轻微的图像/文本闪烁。 我喜欢这个解决方案,因为我可以设置所有的CSS,因为它将适用于没有javascript的人,并且它允许我轻松地从一个点到现有点进行动画制作,而不是像Javascript或jQuery的。 但是,仍然有这种图像闪烁,这是不可接受的。 页面预加载器能解决这个问题吗?
这些日子里普遍认同的做法是什么? 我也担心搜索引擎优化和设置visibility: hidden
的后果visibility: hidden
或display:none
,然后动画它英寸蜘蛛读取JavaScript?
以下是我正在谈论的屏幕闪烁和动画示例。
看看HTML5 Boilerplate和Modernizr。
它附带一个智能解决方案,以查看客户端是否在CSS中启用了JavaScript。
默认情况下, no-js
类应用于HTML标记,然后由Modernizr替换为js
。 这样你可以相应地限定你的CSS选择器。
示例CSS:
.no-js .foo { }
.js .foo { }
这应该执行得足够快,以使启用JavaScript的客户端看不到no-js
样式。
参考文献: