目录
- CSS3--3种隐藏元素方法的区别
- display: none
- visibility: hidden
- opacity: 0
CSS3--3种隐藏元素方法的区别
display: none
DOM
结构: 浏览器不会渲染display:none
的元素, 并且不占据页面空间- 事件监听: 无法对元素进行事件监听
- 继承: 不会被子元素继承(子元素设置
display: block
不会显示) - 改动: 改动属性值会引起页面的重排和重绘
- 过渡: 无法设置过渡效果
transition: display
无效
visibility: hidden
- 不会被渲染,但是会占据页面空间
- 无法对元素设置事件监听
- 可以继承,子元素设置非
visibility:hidden
可以显示 - 改动属性只会引起页面重排
transition:visibility
会立即显示,hidden有过渡效果
opacity: 0
- 元素被隐藏, 会占据页面空间
- 可以设置事件监听
- 可以继承,
子元素设置opacity可以显示
- 不会重绘也不会重排
transition
:opacity
可以实现显示隐藏的过渡效果opacity
会触发硬件加速
原文地址:https://www.cnblogs.com/luoshuifushen/p/12530651.html
时间: 2024-10-15 06:20:28