Javascript 如何使html看起来被禁用?

Javascript 如何使html看起来被禁用?,javascript,css,html-table,Javascript,Css,Html Table,我在一些论坛上读到,要使html表看起来被禁用,就要添加一层div。我的问题是我不知道如何做 我有3个问题: 我将如何设置div高度,每当添加新行时表格增加其高度时,它将自动调整为表格高度 我怎样才能让div盖上桌子呢。我不知道如何分层html元素 我将如何编写javascript代码,使我的表在单击“禁用”按钮时看起来被禁用,并在单击“启用”按钮时再次启用它 tabledisabletest.html 我有div禁用器来执行禁用,但我不能让它覆盖桌子 请帮我做这个。我对这件事太陌生了 如果希望

我在一些论坛上读到,要使html表看起来被禁用,就要添加一层div。我的问题是我不知道如何做

我有3个问题:

我将如何设置div高度,每当添加新行时表格增加其高度时,它将自动调整为表格高度

我怎样才能让div盖上桌子呢。我不知道如何分层html元素

我将如何编写javascript代码,使我的表在单击“禁用”按钮时看起来被禁用,并在单击“启用”按钮时再次启用它

tabledisabletest.html

我有div禁用器来执行禁用,但我不能让它覆盖桌子

请帮我做这个。我对这件事太陌生了

如果希望disabler元素覆盖表格,请在其上添加负的底部边距。另外,将“不透明度”(opacity)设置为小于1的值,以不完全覆盖并隐藏其后面的表格

 #disabler {
     opacity: 0.5;
     margin-bottom: -200px;
 }
既然你提到你这样做是为了教育目的,我就不给出完整的解决方案。请确保开始

如果要使文本看起来不可选择,请使用以下CSS:

-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-o-user-select: none;
user-select: none;

您必须将div disabler放在桌子的顶部

您可以通过绝对定位div来实现这一点。我添加了一个新div,tableContainer封装了disabler div和表,并绝对定位了div

<div id="tableContainer">   <!-- New Div-->
   <div id="disabler"></div>
   <table>....<table>
</div>

实例:

建议:使用jQuery BlockUI。演示:我想我需要先学习本机javascript,然后再开始使用一些高级技术。我还需要学习javascript,因为我需要为考试做准备。你让它看起来被禁用到底是什么意思?用户仍然可以从中选择文本吗?是否需要在禁用的控件上显示边框和阴影效果?是否可以禁用文本选择?我想让它看起来像一个被禁用的控件。谢谢,但是当在表中插入新行时,我如何使它自动调整。@ChickenBoy使用JavaScript。可以使用element.style.height=height+px更改元素的高度;其中高度是一个数字。要获取元素的大小,请使用element.offsetHeight`。有关其他JavaScript代码,请参阅。再次声明:我并没有展示完整的解决方案,只是提供一些有用的提示,让你学到一些东西。最好的学习方法是积累经验和犯错误。
<div id="tableContainer">   <!-- New Div-->
   <div id="disabler"></div>
   <table>....<table>
</div>
function disableTable()
{
  document.getElementById("disabler").style.display = "block";
}

function enableTable()
{
  document.getElementById("disabler").style.display = "none";
}