CSS中display:none,visibility:hidden,opacity:0的区别
css

CSS中display:none,visibility:hidden,opacity:0的区别

芸殇
2022-11-08 / 0 评论 / 149 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2024年03月13日,已超过962天没有更新,若内容或图片失效,请留言反馈。

相同点

1、三者都可以隐藏元素

不同点

占据空间

1、display:none,隐藏之后是不占据空间的,而且它和它所有的子元素都会被隐藏。
2、visibility:hidden ,隐藏之后是会占据空间。
3、opacity:0,则是让元素变透明,也是会占据空间。

子元素是否继承

1、display:none,不会被继承因为都被隐藏了。
2、visibility:hidden ,会被子元素继承,但是可以通过设置visibility:visible来让子元素显示。
3、opacity:0,会被子元素继承。

事件

1、display:none,无法触发事件。
2、visibility:hidden ,无法触发事件。
3、opacity:0,仍会触发事件。

动画

1、display:none,不在生效。
2、visibility:hidden ,不在生效。
3、opacity:0,仍会生效。

回流和重绘

1、display:none,产生回流和重绘。
2、visibility:hidden ,只会引起页面重绘。
3、opacity:0,只会引起页面重绘。

0

评论 (0)

取消