我使用可视性:隐藏来隐藏某些元素,但它们在隐藏时仍然占用页面空间。
我怎么能让它们在视觉上完全消失,就好像它们根本不在DOM中一样(但实际上没有从DOM中删除它们)?
我使用可视性:隐藏来隐藏某些元素,但它们在隐藏时仍然占用页面空间。
我怎么能让它们在视觉上完全消失,就好像它们根本不在DOM中一样(但实际上没有从DOM中删除它们)?
当前回答
如果显示:无;不管用,你必须加上clear: none;
其他回答
这个问题的答案是说使用display:none和display:block,但这对那些试图使用css过渡来显示和隐藏内容的人没有帮助。
这也让我抓狂,因为使用display会杀死任何css过渡。
一个解决方案是将这个添加到使用可见性的类中:
overflow:hidden
要做到这一点,确实取决于布局,但它应该在它所在的div中保持空内容。
尝试设置display:none为隐藏,设置display:block为显示。
据我所知,这有四种可能
巴顿HTML < style = "显示屏:郎;“巴顿> < - > 没有人;的 jQuery道具(“# buttonId美元)。(“显示屏”:“郎”);与$(“buttonId”).css(“opacity”,0);
如果所有隐藏元素的其他选项都不适合你,还有另一个选项,我没有看到提到。假设元素没有子元素,它就能工作。
它将隐藏一个元素而不占用空间:
display: contents;
检查浏览器的支持,因为它是一个较新的CSS特性。
$('#abc').css({"display":"none"});
这将隐藏内容,也不会留下空白。