前端常见面试题之display:none和visibility:hidden的区别

前端常见面试题之display:none和visibility:hidden的区别display none 和 visibility hidden 都可以让一个 div 消失 那他们具体的区别在哪里呢 visibility hidden 内容不显示 但是内容占用相关空间

大家好,欢迎来到IT知识分享网。

display:none和visibility:hidden都可以让一个div消失,那他们具体的区别在哪里呢:

  1. visibility:hidden,内容不显示,但是内容占用相关空间;display:none,内容不显示,也不占用相关内存。

(1)visibility:hidden时,相关内容不显示,但是占用空间。

前端常见面试题之display:none和visibility:hidden的区别

相关代码:

<!DOCTYPE html>

<html>

<head>

<meta charset=”utf-8″>

<title>

visibility:hidden和display:none的区别

</title>

</head>

<body>

<ul>

<li>列表 A</li>

<li>列表 B</li>

<li style=”visibility: hidden;”>列表 C(visibility:hidden)</li>

<li>列表 D</li>

</ul>

</body>

</html>

(2)display:none时,相关内容不显示,也不占用空间

前端常见面试题之display:none和visibility:hidden的区别

相关代码:

<!DOCTYPE html>

<html>

<head>

<meta charset=”utf-8″>

<title>

visibility:hidden和display:none的区别

</title>

</head>

<body>

<ul>

<li>列表 A</li>

<li>列表 B</li>

<li style=”display: none;”>列表 C(display:none)</li>

<li>列表 D</li>

</ul>

</body>

</html>

2.visibility:hidden有继承性,父元素hidden,它的子元素也会继承hidden的属性,但是如果子元素有主见,自己单独定义一个visibility:visible的属性,那么子元素自己就可以显示出来。而display:none的父元素定义好后,子元素定义visibility:visible或者display:block是没有效果的。

(1)父元素应用visibility:hidden时,父元素被隐藏,如果子元素应用了visibility:visible,那么子元素就会正常显示出来。

前端常见面试题之display:none和visibility:hidden的区别

相关代码:

<!DOCTYPE html>

<html>

<head>

<meta charset=”utf-8″>

<title>

visibility:hidden和display:none的区别

</title>

</head>

<body>

<ul style=”visibility: hidden;”>

<li>列表 A</li>

<li>列表 B</li>

<li style=”visibility: visible;”>ul被隐藏,列表 C(visibility: visible)显示出来</li>

<li>列表 D</li>

</ul>

</body>

</html>

(2)如果父元素应用了display:none,子元素应用visibility:visible或display:block是不起作用的。

前端常见面试题之display:none和visibility:hidden的区别

相关代码:

<!DOCTYPE html>

<html>

<head>

<meta charset=”utf-8″>

<title>

visibility:hidden和display:none的区别

</title>

</head>

<body>

<ul style=”display: none;”>

<li>列表 A</li>

<li>列表 B</li>

<li style=”visibility: visible;”>ul被隐藏,列表 C(visibility: visible)显示不出来</li>

<li style=”display: block;”>列表 D(display:block)</li>

</ul>

</body>

</html>

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/95419.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信