我有5个div。每次我只想在屏幕中间显示其中一个。问题是隐藏的div占用空间。每个div都包含很多信息,所以每次我需要显示它时我都不想创建它。
我只是使用了:visibility="visible"
或visibility="hidden"
。
还有其他可能吗?
答案 0 :(得分:3)
您需要使用display:none
来完全隐藏布局中的元素,其记录为:
none - 此值导致元素不显示在文档中。它对布局没有影响。
visibility:hidden
会留下隐形框,这是您遇到的问题。来自文档:
隐藏 - 生成的框是不可见的(完全透明,没有绘制任何内容),但仍会影响布局。此外,如果元素的后代具有“可见性:可见”,则该元素的后代将是可见的。
display
的默认CSS <div>
值为display:block
,因此要再次显示 <div>
,只需将元素设置回display:block
。请注意,有other values for display
,因此请注意将其设置回原始值(可能不一定是默认值)。
答案 1 :(得分:0)
display:none
;如果您使用jquery,则使用.hide()
答案 2 :(得分:0)
我通常只使用jquery'hide'方法。这应该隐藏div而不会占用屏幕上的任何空间。
答案 3 :(得分:0)
即使是不可见的元素占用了页面上的空间。使用display
属性创建不占用空间的不可见元素。
display:none;
阅读本文以获取更多信息 - &gt; https://developer.mozilla.org/en-US/docs/CSS/display