我想有一个隐藏的复选框,不占用屏幕上的任何空间。
如果我有这个:
<div id="divCheckbox" style="visibility: hidden">
我没有看到复选框,但它仍然创建了一个新行。
如果我有这个:
<div id="divCheckbox" style="visibility: hidden; display:inline;">
它不再创建新的行,但它会占用屏幕上的水平空间。
是否有一种方法可以让一个隐藏的div不占用任何空间(垂直或水平)?
我想有一个隐藏的复选框,不占用屏幕上的任何空间。
如果我有这个:
<div id="divCheckbox" style="visibility: hidden">
我没有看到复选框,但它仍然创建了一个新行。
如果我有这个:
<div id="divCheckbox" style="visibility: hidden; display:inline;">
它不再创建新的行,但它会占用屏幕上的水平空间。
是否有一种方法可以让一个隐藏的div不占用任何空间(垂直或水平)?
当前回答
通过鼠标点击显示/隐藏:
<script language="javascript">
function toggle() {
var ele = document.getElementById("toggleText");
var text = document.getElementById("displayText");
if (ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "show";
}
else {
ele.style.display = "block";
text.innerHTML = "hide";
}
}
</script>
<a id="displayText" href="javascript:toggle();">show</a> <== click Here
<div id="toggleText" style="display: none"><h1>peek-a-boo</h1></div>
来源:这里
其他回答
除了CMS的答案,你可能想要考虑将样式放在一个外部样式表中,并将样式分配给id,如下所示:
#divCheckbox {
display: none;
}
显示:没有;
这将使元素消失,不占用任何空间。
#divCheckbox{显示:none;}
这样就能解决问题了
考虑使用<span>来隔离要设置样式的标记小段,而不破坏布局。这似乎比强制<div>不显示本身更习惯——如果实际上复选框本身不能按您想要的方式进行样式设置的话。
使用style="display: none;"。此外,您可能不需要DIV,只需设置要显示的样式:复选框上没有样式可能就足够了。