[英]can't set td width in js-generated table
我正在生成一個簡單的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瀏覽器。
我在做什么錯,我該如何解決?
也許這可以幫助您
var cell = document.createElement('td');
parent.appendChild(cell);
cell.style.width = '200px';
這是我用'document.createElement()'方法創建后如何在javascript中設置單元格寬度的問題?
好吧,我想我明白了問題所在。 在根<table>
和<tbody>
有一個<col style="width: 80%;">
和一個<col style="width: 20%;">
<tbody>
,這在下面的<td>
中覆蓋了您的樣式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.