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

我理解提出这个提案的主要原因其实就是首屏可render的时机可能比当前浏览器首次render时间要早。当前浏览器首次render时间大概最晚也在domready之后必定发生了,但是可以更早。比如token数量达到一定。而mobile可以比desktop更早。单独这个因素其实不必标准化,因为浏览器自己可以给个不同于desktop的优化数字。要标准化的是让author能指定某个首屏时机。然而这里到底要给author多细致的控制是很复杂的。考虑下
responsive images 在标准化时发生的事情,就可以理解了。


2014-05-08 14:43 GMT+08:00 Xiaoqian Cindy Wu <xiaoqian@w3.org>:

>  我错了,其实想想中国手机上网速度也不慢哈~就是想表达这个方案其实跟外在因素关系不大 :)
>
> on 08/05/2014 14:35, Xiaoqian Cindy Wu wrote:
>
> 我对这个提案的理解也是跟资源的加载没有关系(所以其实很中国网速慢这点也没有什么关系,属于一个比较通用的优化),属于流程上的针对移动浏 览器 的改进。
>
>
> on 08/05/2014 14:27, Xidorn Quan wrote:
>
> 我想浏览器何时做渲染仍然应该由浏览器来决定,在移动环境下浏览器出于改善用户体验,也应该会有更激进的 渲染
> 策略。因此我认为仅是提示浏览器及早渲染的意义不大。
>
>
> 我对这份提案的理解是,如果显示首屏所必须的内容已经全部加载,那么就提示浏览器已经可以进行渲染了(提案中无论是加属性还是用 tokens
> 数,看过去似乎都是这个目的?)基于这个理解,我提出了可以提供元素不会 relayout 这样一个 hint,浏览器可以对每个拥有这样 hint
> 的元素进行及时的排版及渲染。
>
> 至于具体要不要放在 will-change,要不要用 never,其实这个我是没有特别的偏好的,我只是觉得可以这么做而已。或许表达上稍微有点问题。
>
>
> 2014-05-08 16:10 GMT+10:00 John Hax <johnhax@gmail.com>:
>
>> 如果是这样,will-change: never 的名字可能需要改进。更重要的一点是,其实 will-change: auto
>> 除了浏览器通过其他信息可以判定其实际上可能会 change 的元素以外,剩下的都可以认为是 will-change:
>> never。你可以发现其中的问题——提示某个元素其layout是接近static的,与本提案的目标并无直接联系。本提案的要点,按照我的理解,与元
>> 素是否需要 relayout 无关,而是在于提示浏览器提早做 rendering (即使这样会造成之后的 relayout)。
>>
>>
>> 2014-05-08 13:59 GMT+08:00 Xidorn Quan <quanxunzhen@gmail.com>:
>>
>>   2014-05-08 15:50 GMT+10:00 John Hax <johnhax@gmail.com>:
>>>
>>>
>>>>
>>>>
>>>> 2014-05-06 21:06 GMT+08:00 Xidorn Quan <quanxunzhen@gmail.com>:
>>>>
>>>>  我觉得 John 说的非常好,现在这个提案过于限于具体实现,暴 露浏览器实现细节。我也赞同放在 CSS 里面比较好。
>>>>>
>>>>> 既然是 CSS 的话,我有一个想法,我们不如给浏览器这么一个 hint:这个元素的 geometry
>>>>> 不会随其后续元素的载入而发生改变。如果浏览器能得到这么一个 hint,它就可以立即对这个元素进行排版及渲 染, 而不必顾忌后面的内容。
>>>>>
>>>>>
>>>>> 更进一步地,我联想到了现在刚好在 FPWD 阶段的 will-change,我们可以提议给 will-change 加一个 keyword
>>>>> 叫做 never 来给浏览器这么一个 hint,各位觉得如何?
>>>>>
>>>>> 不过我不是很确定这个方案对于现有的浏览器解析 策略 有没有可行性。(没有研究过相关流程)
>>>>>
>>>>
>>>>
>>>>   从我的理解上说,will-change: never 跟 will-change 的其他用法的场景差得太远。且并非所有属性对
>>>> layout 有影响。这让我想起了 table-layout: fixed 。
>>>>
>>>>  但关键的一点,table-layout其实改变 了 render 的结果。我不清楚你心目中的 will-change: never
>>>> 是否也会改变 render 的结果。如果是改变的,那么就超出了本份提案的范畴(按照我的理解)。
>>>>
>>>
>>>  既然是 hint,按我的理解也是不会改变最终渲染结果的。
>>>
>>> 确实这里的提案跟 will-change 的其他用法场景相差很远,只不过同样是用作 hint(CSS 里面似乎还没有其他 hint
>>> 性质的属性?)如果加进去,实际上是扩展了 will-change 的语义了。
>>>
>>>   - Xidorn
>>>
>>
>>
>
> --
> Best Regards,
> Xiaoqian (Cindy) Wu
>
>
> --
> Best Regards,
> Xiaoqian (Cindy) Wu
>
>

Received on Thursday, 8 May 2014 08:32:03 UTC