0

我有一个文本区域,它适合一个名为.question. 现在我遇到的问题是,如果表格单元格的高度扩大到增加的高度,则 textarea 的高度不会增加,因此在顶部表格单元格边框和 textarea 边框顶部之间留下一个间隙,它也会留下一个间隙在 textarea 的底部边框和表格单元格的底部边框之间。

如果表格单元格的高度足够低,那么看起来 textarea 已经填满了表格单元格的高度。

但我的问题是,无论表格单元格的高度是否已更改,文本区域都应始终填充表格单元格的高度。我的问题是,我怎样才能改变下面的 css、HTML 和 jquery 来做到这一点?

CSS:

    .question { 
        max-width:0.1%;
        border:1px black solid;
        border-collapse:collapse;
        line-height: 0;
    }

    .question textarea {
        width:auto;
        resize:none;
        height:100%;
        font-size:100%;
        display: block; 
        overflow:auto;

    }

查询:

function setWidth() {
    var questionCellHeight = $("#qandatbl_onthefly tbody .question").height();
    $(".textAreaQuestion").css({
        "height": (questionCellHeight) + "px"
    });
}

HTML表格:

<table id="qandatbl" align="center" cellpadding="0" cellspacing="0" border="0">
<thead>
<tr>
    <th class="question">Question</th>
</tr>
</thead>
</table>
<div id="qandatbl_onthefly_container">
<table id="qandatbl_onthefly" align="center" cellpadding="0" cellspacing="0" border="0">
<tbody>
<tr class='optionAndAnswer' align='center'>
<td class='question'>
<textarea class='textAreaQuestion'></textarea>
</td>
</tr>
</tbody>
</table>

更新:

.question textarea我更改为.textAreaQuestion并删除了 height 属性的 css 的轻微更新:

.textAreaQuestion{
    resize:none;
    font-size:100%;
    display: block; 
    overflow:auto;
}

我相信需要编辑jquery,以便如果表格单元格增加,它将文本区域的高度增加到与增加表格单元格相同的高度。(观点)

4

1 回答 1

1

如果您只想再次调用 jQuery 函数,请尝试添加类似$(".gridBtns").click(setWidth);处理 Grid 的任何内容。

恐怕我不确切知道您需要什么,因为要了解的信息太多或太少。尝试缩小您的问题范围,并将问题放在 jsfiddle 中。之前有人问你的时候,你做了相反的事情。您只是不断添加代码来复制您的问题。

在旁注中,请停止使用tablesfor layout,这就是divsfor。

于 2012-12-28T15:48:15.740 回答