比较 opacity: 0、visibility: hidden、display: none 优劣和区别

结构上:

  • display:none 会从渲染树中消失,元素不占据空间且无法点击;
  • visibility: hidden 不会从渲染树中消失,元素继续占据空间但无法点击;
  • opacity: 0 不会从渲染树消失,元素占据空间且可点击。

继承性:

  • display: none 和 opacity: 0 是非继承属性;父元素设置了 display:none 或 opacity: 0,子元素无论怎么设置都无法显示;
  • visibility: hidden 会被子元素继承,并且子元素可以通过设置设置 visibility: visible; 来取消隐藏。

性能:

  • display: none 会引起重排,性能消耗较大;
  • visibility: hidden 会引起重绘,性能消耗相对较小;
  • opacity: 0 会重建图层,性能较高
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值