首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么jQuery显示/隐藏使用display:none而不是visibility:hidden?

为什么jQuery显示/隐藏使用display:none而不是visibility:hidden?
EN

Stack Overflow用户
提问于 2009-07-21 16:12:10
回答 5查看 27.7K关注 0票数 71

display:none意味着元素不会呈现为DOM的一部分,因此直到display属性更改为其他属性时才加载该元素。

visibility:hidden加载元素,但不显示它。

为什么jQuery使用display:none来实现显示/隐藏功能,而不是在visibility:hiddenvisibility:visible之间切换

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-07-21 16:15:29

因为在display:none中,无论出于何种目的,元素都将不复存在--它不占用任何空间。然而,在visibility:hidden中,就好像您刚刚向元素添加了opacity:0一样--它占用相同的空间,但看不见。

jQuery的创建者可能认为前者更适合.hide()

票数 65
EN

Stack Overflow用户

发布于 2009-07-21 16:14:40

visibility: hidden使元素不可见,但不会将其从页面布局中删除。它会在元素所在的位置留下一个空盒子。display: none将它从布局中删除,这样它就不会占用页面上的任何空间,而这通常是人们隐藏某些东西时想要的。

票数 18
EN

Stack Overflow用户

发布于 2009-07-21 16:13:53

可见性:隐藏使元素不可见,使其仍然使用页面上的空间。显示:none使元素没有空间并且完全消失,而它仍然存在于DOM中。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1160196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档