display: none与visibility: hidden的区别
-
display: none的元素不占据任何空间,visibility: hidden的元素空间保留; -
display: none会影响css3的transition过渡效果,visibility: hidden不会; -
display: none隐藏产生重绘 ( repaint ) 和回流 ( relfow ),visibility: hidden只会触发重绘;(回流重绘知识点参考:真正理解重绘和回流) -
株连性:
display: none的节点和子孙节点元素全都不可见,visibility: hidden的节点的子孙节点元素可以设置visibility: visible显示。visibility: hidden属性值具有继承性,所以子孙元素默认继承了hidden而隐藏,但是当子孙元素重置为visibility: visible就不会被隐藏。

浙公网安备 33010602011771号