我正在生成一个简单的html表,并希望在同一行中有不同宽度的列。但是,当我尝试使用像素或%设置宽度时,显示内容没有变化。此外,添加的第一列(' td'元素)总是比后来添加的其他列宽得多。我已经尝试在创建元素之后和将其作为子节点附加之前设置宽度,并且在将元素作为子节点附加之后设置宽度。这是我尝试过的一个例子:
var tr = document.createElement('TR');
tr.style.margin = "50px"
//scoring column
var td0 = document.createElement('TD')
td0.style.padding = '1em'
td0.style.width = '2px'
var tr11 = document.createElement('TR');
tr11.style.margin = "50px"
tr11.innerHTML ="score: " + ascore_array[i + offset];
var tr22 = document.createElement('TR');
tr22.style.margin = "50px"
tr22.innerHTML ="num votes: " + anumVotes_array[i + offset];
td0.appendChild(tr11)
td0.appendChild(tr22)
//answer column
var td1 = document.createElement('TD')
td1.style.padding = "1em"
td1.innerHTML = auser_array[i + offset]
tr.appendChild(td0)
td0.style.width = "20%"
tr.appendChild(td1)
td1.style.width = "30%"
正如您在上面的代码中看到的,我已经尝试了px和%作为宽度单位。我还尝试在将元素设置为子节点之前和之后设置宽度。我的代码没有变化。另外,我使用的是css模板,但它们只为我的表元素设置了默认的背景颜色。 css中没有任何内容可以定期进行td元素大小调整。我也试过调整td元素中的tr元素,但这也没有效果。
我使用的是Chrome浏览器。
我做错了什么,如何解决?
答案 0 :(得分:0)
也许这可以帮到你
var cell = document.createElement('td');
parent.appendChild(cell);
cell.style.width = '200px';
这是我找到它的问题 how to set cell width in javascript just after creating it with 'document.createElement()' method?
答案 1 :(得分:0)
好的我想我知道问题是什么。根<col style="width: 80%;">
和<col style="width: 20%;">
之间有一个<table>
和一个<tbody>
,它覆盖了<td>
下方的样式