有一个名为will-change的新CSS属性,使用它可以定义将经常更改的属性,因此浏览器可以优化它。例如:
.element {
will-change: transform, opacity;
}但是相反的呢?对于像will-not-change这样的东西有什么建议或工作草案吗?使用它可以提示浏览器,这个属性永远不会改变(常量),所以它可以对它进行一些优化吗?
发布于 2016-07-11 11:50:53
浏览器已经为默认“不会改变”的属性优化其布局算法。will-change是一种选择属性的方法,因为这可能会改变(尽管属性名称中的“意志”可能暗示什么),这样浏览器就可以在这些属性发生变化时(至少从它们的初始值)执行必要的优化。
可以这样想:没有在will-change中列出的属性已经被优化为“不会改变”,或者“它们是否改变在性能上没有任何意义”。
例如,您的will-change声明告诉浏览器为.element元素创建一个组合层,如果这些元素需要转换或alpha组合,那么它们的呈现就会在硬件上加速。由于这个will-change声明不适用于没有这个类的元素,所以浏览器假定这些其他元素永远不会被转换或alpha组合,因此不需要这个组合层。通过不为它们创建组合层,浏览器已经优化了这些元素的呈现,而不是硬件不必要地加速它们。
https://stackoverflow.com/questions/38306114
复制相似问题