dispay: none;
-
DOM结构:浏览器下不会渲染display属性为none的元素,不占据空间
-
事件监听:无法进行DOM事件监听
-
性能:动态改变此属性会引起重排,性能较差
-
继承: 不会被子元素继承,毕竟子类也不会被渲染
-
transition: transform不支持display
visibility: hidden;
-
DOM结构:元素被隐藏,但是会被渲染,不会消失占据空间
-
事件监听:无法进行DOM事件监听
-
性能:动态改变此属性会引起重绘,性能较高
-
继承: 会被子元素继承,子元素可以通过设置visibility:visiable;来取消隐藏
-
transition: visibility会立即显示,隐藏时会延迟
opacity:0;
- DOM结构:透明度为100%,元素隐藏,占据空间
- 事件监听:可以进行DOM事件监听
- 性能:提升为合成层,不会触发重绘,性能较高
- 继承:会被子元素继承,子元素并不能通过opacity:1;来取消隐藏
- transition: opacity可以延迟显示和隐藏