当一个无限关键帧动画的元素通过opacity:0被隐藏时,PC的资源是否仍然会花费在渲染上?

When an element with infinite keyframes animation is hidden via opacity: 0, will PC's resources still be spent on rendering it?

我试图阅读一些 w3c 规范,但没有找到答案。有人对此有见解吗?

是的,他们会的。不透明度 0 仍在渲染树中,因此将使用比说更多的资源:

  • 显示:none 这将从渲染树中完全删除元素
  • visibility: hidden 将计算宽度、高度的基本属性,但不会实际渲染它

显示通常会更好,除非回流成为一个问题,在这种情况下可见性通常会更快。

请注意,还有很多与此类似的问题,如下所示,值得在以后查看,否则您会一直被否决。 opacity vs visibility

visibility vs display 还要记住 opacity: 0 仍然在事件和选项卡模型中,与其他 2 不同。