讨厌的HTML布局:如何在保留布局的同时隐藏元素?

时间:2009-03-24 19:24:05

标签: html css

我想隐藏表单输入字段。但是调用setVisible('inputID',false)会导致我的液体布局崩溃。我不希望这样。

这里有一些简单的解决方法吗?我想过尝试将输入字段的前景色,背景色和边框颜色都渲染为全白色。但那变得越来越复杂。

4 个答案:

答案 0 :(得分:7)

使用css隐藏元素有两种方法:

  • display属性设置为none

  • visibility属性设置为hidden

第一个选项从流中删除元素,而第二个选项隐藏元素但仍允许它占用流中的空间。

您正在使用第一个选项,而您想要使用第二个选项。

示例:

document.getElementById('inputID').style.visiblity = 'hidden';

答案 1 :(得分:3)

如果将元素的“可见性”样式设置为“隐藏”,它将隐藏视图中的元素,但不会影响其他元素的布局。

答案 2 :(得分:0)

如果没有看到您的代码,很难提供更好的建议,但您可以做一些事情:

  1. 鉴于您正在使用JavaScript,您可以获取要删除的表单输入的宽度和高度,创建具有这些维度的新div,将其注入表单元素之后,然后隐藏表单元素。有点黑客,但它确实有效。

  2. 使用HTML中的div对输入进行环绕,并在CSS中为其指定明确的宽度和/或高度。然后使用JavaScript删除输入。

答案 3 :(得分:-1)

这是relative positioning元素的定义。

只需给它相对定位并远离屏幕坐标。

e.g。

position:relative
left:-2000px

它应该将元素放在屏幕之外,但是留下一个“洞”就可以了。