为了账号安全,请及时绑定邮箱和手机立即绑定

<p id="div3" style="visibility:hidden;opacity:0">visibility</p>这个到底是隐藏还是显示的?

 <p id="div3" style="visibility:hidden;opacity:0">visibility</p>这个到底是隐藏还是显示的?

如果说它是显示的,可是右边页面隐藏了。如果说它是隐藏的可是$("#div3:visible")的结果是true。

正在回答

3 回答

  如果元素不在文档流,肯定是不可见的;

  如果在文档流,就能够被jq识别,但这样都是肉眼不可见而已(上述六种方法);

  六种方法中,其中设置透明度属性为0,visibility属性为hidden,仍然占据文档空间,只不过让我们看不到了而已,所以在jq中认为是被筛选成:visible;那么其他4种方法,则在文档中不占据空间,被jq认为应该筛选为:hidden


0 回复 有任何疑惑可以回复我~

以下六种情况都是“肉眼”不可见的:1.CSS display的值是none。

2.type="hidden"的表单元素。

3.宽度和高度都显式设置为0。

4.一个祖先元素是隐藏的,该元素是不会在页面上显示。

5.CSS visibility的值是hidden。

6.CSS opacity的指是0。

但是只要在文档中占有空间就认为是可见的(对文档可见对肉眼不可见),所以你所说的情况也就是后两种被文档被认为是可见的,前四种是不可见的。


1 回复 有任何疑惑可以回复我~
#1

慕粉3875660

那后两种是隐藏的吧,为什么判断是不是隐藏的show( $('#div3:hidden') );这句结果是0
2016-08-31 回复 有任何疑惑可以回复我~

是显示;

无论是visibility:hidden  还是opacity:0 , 在页面上都有具体的位置,也就是说他们都有自己的大小,只不过一个的透明度为0,另一个没有在页面上显示

这就像一个透明的盒子,他放在页面上,是实实在在存在的,只不过你看不见,但是你可以"摸到",因为其他的盒模型无法占据他的空间

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

<p id="div3" style="visibility:hidden;opacity:0">visibility</p>这个到底是隐藏还是显示的?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信