我当前的项目使用了相当多的基于CSS的背景渐变。它们不用于每个元素,但它们对于用户界面非常重要。 在整合它们时,我无法找到这些渐变如何影响性能的详细答案。
显然,在首次绘制相应元素时,具有多个渐变将使用处理能力。是否知道这个梯度生成是否也可以是硬件加速的还是只有CPU?
另外,和IMO更重要的是,它们是否被缓存?如果是这样,两个元素必须相同才能共享相同的“生成”渐变?我的第一个猜测是css语句和元素大小必须相同(即使包含此语句的类不同)。它也可能被类缓存,但元素大小可能不同,因此需要另一个梯度。
例如,如果我有一个列表(ul),让我们说15个列表项(li),每个列表项都有一个背景渐变,并且包含三个也有背景渐变的元素,每个元素类型都有一个常量。浏览器会生成15或60个渐变吗?
答案 0 :(得分:2)
Pankucins是对的 - 浏览器会在下载时缓存整个CSS文件。然后在页面加载时呈现样式。
每个渐变将分别渲染;但我真的不认为这会是一个太大的问题。