因此,如果我们有一个在不同情况下看不到的div,z-index
,opacity,
父级overflow:hidden
和相对/绝对定位等......
将display:none
设置为该div是必要的还是更好?我可以想象浏览器会跳过display:none
div,而它必须进行一些计算,否则会得到相同的结果。
我之所以这样问是因为我正在处理动画并且设置display:none
需要在动画完成时进行回调,这意味着应该避免css3过渡。 (我知道有些浏览器提供了一种从css3转换中获得回调的方法,但对我来说还不够“通用”。)
另一种说法是:
使用display:none
而不是使用width:0;height:0
,left:-100000px
来重排/重绘div更快吗?
更新2
我发现,在Chrome中,如果你在display:none
的div中有svg,则无法使用<use xlink:href="">
引用它。如果您使用其他内容而不是display:none
,例如visibility:hidden
,width:0;height:0
...参考作品
这意味着使用display:none
使浏览器跳过某些步骤
所以我将其视为部分肯定:使用display:none
可能会略微简化渲染过程。
答案 0 :(得分:1)
无论接近使用什么,在页面加载方面“缓和”的含义仅取决于CSS和html内容的大小。
如果通过宽松来表示客户的CUP周期,则不会有任何明显的差异。如果你的逻辑很复杂,那么你可能会觉得效率差异很大,只能尝试。