gpt4 book ai didi

javascript - thead 和 tbody 之间的列不匹配

转载 作者:太空宇宙 更新时间:2023-11-04 15:17:15 25 4
gpt4 key购买 nike

我在这里有一个应用程序:Application

在应用程序中请执行以下操作:

  1. 您会在左侧看到一个绿色加号按钮,单击它会打开一个模态窗口。

  2. 在模态窗口的搜索栏中输入短语 single并提交搜索。下面会显示一个表格。

  3. 通过单击“添加”按钮从表中添加一行,它会在顶部控件中添加信息。

  4. 最后点击“添加问题”按钮,这将在下方添加一个表格行。

现在我遇到的问题是 <thead> 中的列和 <tbody> 中的列不匹配。我的问题是如何让这些列匹配?

下面的 HTML 代码显示了附加的行:

    var $tbody = $('#qandatbl > tbody'); 
var $tr = $("<tr class='optionAndAnswer' align='center'>");
var $td = $("<td class='extratd'>");
var $plusrow = $("<td class='plusrow'></td>");
var $qid = $("<td class='qid'></td>").text(qnum);
var $question = $("<td class='question'></td>");
var $noofanswers = $("<div class='noofanswers'>2. Number of Answers:<br/></div>");
var $options = $("<div class='option'>1. Option Type:<br/></div>");
var $answer = $("<div class='answer'>3. Answer:<br/></div>");
var $replies = $("<td class='noofreplies'><div class='wrapper'></div></td>");
var $weight = $("<td class='weight'></td>");
var $image = $("<td class='image'></td>");
var $video = $("<td class='video'></td>");
var $audio = $("<td class='audio'></td>");

...

$tr.append($plusrow);
$tr.append($qid);
$tr.append($question);
$tr.append($td);
$td.append($options);
$td.append($noofanswers);
$td.append($answer);
$tr.append($replies);
$tr.append($weight);
$tr.append($image);
$tr.append($video);
$tr.append($audio);
$tbody.append($tr);

下面是 html 表格,其中包含表格标题列以及表格行附加到的位置:

<table id="qandatbl" align="center">
<thead class="tblhead">
<tr>
<th></th>
<th class="qid">Question No</th>
<th class="question">Question</th>
<th class="optandans">Option and Answer</th>
<th class="noofreplies">Number of Replies</th>
<th class="weight">Number of Marks</th>
<th class="image">Image</th>
<th class="video">Video</th>
<th class="audio">Audio</th>
</tr>
</thead>
<tbody class="tblbody">
</tbody>
</table>

最后是CSS代码:

body{
font-size:85%;
}

#qandatbl{
border:1px black solid;
border-collapse:collapse;
}

#qandatbl td {
vertical-align: middle;
}

#qandatbl th{
border:1px black solid;
border-collapse:collapse;
text-align:center;
}

.tblhead, .tblbody {
display: block;
}

.tblbody{
height: 500px;
overflow: auto;
width:100%;
}

.extratd{
border:1px black solid;
border-collapse:collapse;
}

.qid {
min-width:3%;
max-width:3%;
font-weight:bold;
border:1px black solid;
border-collapse:collapse;
}

.question {
min-width:25%;
max-width:25%;
border:1px black solid;
border-collapse:collapse;
}

.noofanswers{
min-width:100%;
max-width:100%;
padding-top:5%;
padding-bottom:5%;
}

.noofreplies{
min-width:3%;
max-width:3%;
border:1px black solid;
border-collapse:collapse;
}

.optandans{
min-width:30%;
max-width:30%;
border:1px black solid;
border-collapse:collapse;
}

.option{
min-width:100%;
max-width:100%;
padding-top:5%;
padding-bottom:5%;
}

.weight {
min-width:3%;
max-width:3%;
border:1px black solid;
border-collapse:collapse;
}

.answer {
min-width:100%;
max-width:100%;
padding-top:5%;
padding-bottom:5%;
}

.audio{
min-width:11%;
max-width:11%;
border:1px black solid;
border-collapse:collapse;
}

.video{
min-width:11%;
max-width:11%;
border:1px black solid;
border-collapse:collapse;
}

.image{
min-width:11%;
max-width:11%;
border:1px black solid;
border-collapse:collapse;
position:relative;
}

.plusrow{
min-width:2%;
max-width:2%;
border:1px black solid;
border-collapse:collapse;
}

我已经包含了一个 jsfiddle,因此您可以查看它的演示并测试您的任何想法:http://jsfiddle.net/heA2b/1/

最佳答案

第一个答案 (user1721135) 不正确,这是因为您为 thead 和 tbody 分配了“ block ”的显示。删除它,您的问题就会消失。

他是对的,如果混合和最大宽度相同,则您不必分配它们,但这不是导致您出现问题的原因。

编辑以添加工作示例:http://codepen.io/joe/pen/gqzbf

关于javascript - thead 和 tbody 之间的列不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13962631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com