1

使用 DOM 元素尝试将 cellPadding 添加到表格:为什么

var FirstTabContent = document.createElement('div');
var Newtable = document.createElement('table');
Newtable.border = "1";
Newtable.cellpadding = "20px 20px 20px 20px";
///////////////
//populate table
///////////////
FirstTabContent.appendChild(Newtable);
return FirstTabContent.innerHTML;

返回:

<table border="1">
   <tbody>
      <tr>
         <td>
            <b>id</b>
         </td>
         <td>14079<br>
         </td>
      </tr>
   </tbody>
</table>

细胞填充在哪里?

4

2 回答 2

5

严格来说,cellPadding(大写的 P)对应于元素本身的cellpadding表示属性table,它只接受单个长度或百分比:

Newtable.cellPadding = "20";

但是,如果您尝试通过 CSS 将单元格填充应用于此生成的表格(正如20px 20px 20px 20px值所暗示的那样),您应该使用 CSS,并且使用 CSS,您需要在td元素而不是表格上设置它:

td {
    padding: 20px;
}

否则,您将需要遍历表中的所有单元格(一旦添加它们)并设置style.padding它们,这很乏味。

如果您真的想使用该cellPadding属性,请注意,如果您使用像素值,则只能以这种方式设置统一填充,因为它只接受单个值。

于 2014-11-25T17:25:16.253 回答
1

它应该是cellPadding大写的P

设置Newtable.cellPadding = "20px 20px 20px 20px"可能会将属性设置为所需的值,但不会产生所需的结果。您只能将其设置为像素或百分比长度

Newtable.cellPadding = "20";
于 2014-11-25T17:25:18.887 回答