什么是适用于隐藏任何HTML的CSS。示例 - 类似<div>
标记。
我习惯这样做:
div {display:none; visibility:hidden;}
CSS是否支持所有主要浏览器隐藏该div。特别是它支持I.E。
答案 0 :(得分:18)
如果您仍希望元素占用页面布局中的空间,请使用visibility: hidden;
。例如:
Hello
<div style="visibility: hidden; height: 100px;">Hidden</div>
World
你仍会在两段文字中看到100px,但你不会看到div中的内容。
使用:
Hello
<div style="display: none; height: 100px;">Hidden</div>
World
两个文本元素之间没有空格,因为div
根本不会影响布局。
您可以想到的任何现代浏览器都支持这两种版本。
答案 1 :(得分:12)
启用CSS的浏览器普遍支持display:none
和visibility:hidden
,因此只适用一般的CSS caveat。具有不同的效果:display:none
导致文档呈现为好像元素根本不存在,而visibility:hidden
表示元素将在格式化文档时正常处理,通常占用一些空间,但是从视图中删除,好像它已完全透明。
您使用哪一个取决于您隐藏元素的目标。例如,如果您动态(使用客户端脚本)关闭或打开某些内容,那么visibility:hidden
会更好,因为它不会导致重绘其他内容。
使用两者通常是没有意义的,因为display:none
使visibility:hidden
无关紧要(尽管在级联中,可能会发生这些属性的设置可能会被其他样式表覆盖,然后{{1可能会失效)。
答案 2 :(得分:8)
您甚至不需要visibility:hidden;
。
div {
display:none;
}
以上应该足够了。它适用于所有浏览器。它几乎完全隐藏了元素,因为它将不再对页面布局产生影响。
答案 3 :(得分:2)
display : none;
这是足够和标准的方法来做到这一点
答案 4 :(得分:1)
在 HTML5 中,有一个名为hidden
的新全局属性。
来自https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/hidden:
隐藏的全局属性是一个布尔属性,表示该元素尚未或不再相关。例如,它可用于隐藏在登录过程完成之前无法使用的页面元素。浏览器不会使用隐藏属性集渲染元素。
请注意hidden
与display
和visibility
相比具有语义含义。这就是为什么它不是CSS属性,而是HTML属性。