Re: 答复: 首屏渲染优化提案反馈(原:Re: 答复: 中文兴趣小组5月5日电话会议)

2014-05-08 12:31 GMT+10:00 Hawkeyes Wind <hawkeyes0.cn@gmail.com>:

>  hi all,
>     插一句,不论是否首屏渲染,用户代理渲染至少需要html和css,首屏渲染的情况下,如果css因为网速无法及时加载的话,依旧会是白屏。
>
> 我建议还是以meta的方式来声明首屏渲染。如果以css方式声明,则不清楚设备的屏幕面积,也就不好确定有多少元素需要声明。而且如果css文件没有及
> 时加载完毕,这种方式等同于没有声明。
>     meta方式的话,由用户代理决定渲染哪些元素,如果css没有加载完毕就按默认样式渲染。
>     另外,很多开发者习惯把js代码写在body的结束标记前,那么如果首屏存在脚本交互行为怎么办?
>

我认为你说的没有道理。

1、如果不清楚设备面积,你以 meta 方式如何声明?你无论声明到哪个元素为止开始首屏渲染,还是到多少个 token
开始首屏渲染,对屏幕面积的适应性只会比用 CSS 更差。我说用 CSS 给予浏览器的一个 hint
是这个元素的大小、位置不会随着后续元素的载入而改变,因此浏览器可以根据具体情况自行决定渲染时机,对于不同屏幕的适应性只会更强。

2、如果你当心 CSS 加载不完,完全可以把最重要的部分,比如说首屏需要用到的,以及提供 hint 的 CSS 声明,直接内嵌在页面中。
你也可以在需要提前渲染的元素上加 style 属性来提供 hint。这一点上来说,跟 meta 方式没有根本性的差别。

- Xidorn

Received on Thursday, 8 May 2014 03:49:57 UTC