25
2020
02

display:none与visibility:hidden的区别

display:none    视为不存在且不加载,即,不为被隐藏的对象保留其物理空间,即该对象在页面上彻底消失。

visibility:hidden    隐藏,但在浏览时保留位置,即,使对象在网页上不可见,但该对象在网页上所占的空间没有改变。

使用 display:none属性后,HTML元素(对象)的宽度、高度等各种属性值都将“丢失”;

而使用visibility:hidden属性后,HTML元素(对象)仅仅是在视觉上看不见(完全透明),而它所占据的空间位置仍然存在。也即是说它仍具有高度、宽度等属性值。


例子:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
    	#tb{
    	border: 2px dashed red;
    	background-color: #e2e2e2;
    	padding: 5px
    	}
    </style>
</head>
<body>
    <table id="tb" >
        <tr>
            <td>第1
            </td>
            <td>第2
            </td>
        </tr>
        <tr>
            <td>第1
            </td>
            <td>第2
            </td>
        </tr>
    </table>
</body>
</html>

在表格第二行的 tr 加上 style="display:none"后:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
    	#tb{
    		border: 2px dashed red;
    	background-color: #e2e2e2;
    	padding: 5px
    	}
    	tr:nth-child(2){ 	/*选择属于其父元素的第二个子元素的每个tr里的元素。*/
    		display:none;
    	}
    </style>
</head>
<body>
    <table id="tb" >
        <tr>
            <td>第1
            </td>
            <td>第2
            </td>
        </tr>
        <tr>
            <td>第1
            </td>
            <td>第2
            </td>
        </tr>
    </table>
</body>
</html>

上面的位置没有保留:

在表格第二行的 tr 加上 style="visibility:hidden"后:

原文链接:https://www.qiquanji.com/post/8488.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

微信扫码关注

更新实时通知

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。