display:none
意味着元素不会呈现为DOM的一部分,因此直到display属性更改为其他属性时才加载该元素。
visibility:hidden
加载元素,但不显示它。
为什么jQuery使用display:none
来实现显示/隐藏功能,而不是在visibility:hidden
和visibility:visible
之间切换
发布于 2009-07-21 16:15:29
因为在display:none
中,无论出于何种目的,元素都将不复存在--它不占用任何空间。然而,在visibility:hidden
中,就好像您刚刚向元素添加了opacity:0
一样--它占用相同的空间,但看不见。
jQuery的创建者可能认为前者更适合.hide()
。
发布于 2009-07-21 16:14:40
visibility: hidden
使元素不可见,但不会将其从页面布局中删除。它会在元素所在的位置留下一个空盒子。display: none
将它从布局中删除,这样它就不会占用页面上的任何空间,而这通常是人们隐藏某些东西时想要的。
发布于 2009-07-21 16:13:53
可见性:隐藏使元素不可见,使其仍然使用页面上的空间。显示:none使元素没有空间并且完全消失,而它仍然存在于DOM中。
https://stackoverflow.com/questions/1160196
复制相似问题