一个简单的 HTML 表格,包含两行两列:

<table border="1">
  <tr>
    <th>Month</th>
    <th>Savings</th>
  </tr>
  <tr>
    <td>January</td>
    <td>$100</td>
  </tr>
</table>

Month

Savings

January

$100

若不设置表格宽度,表格会自适应浏览器。

设置表格宽度用width属性

设置表格居中:

左右居中:先设置表格宽度,然后设置表格的margin:0 auto;
上下居中:
(1)设置父级div高度(假设为300px)

(2)设置table的高度(假设为100px)

(3)设置margin-top为:300px/2 - 100px/2

设置table的第一列的宽度是固定值(CSS)

table{table-layout:fixed;}
table tr th:first-child,table tr td:first-child{width:120px;}
首行第一个th定宽同列的宽度都会和他一样.
*注意 第一行 第一个用的是 td 还是 th。

table的width和height

1、table中的width和height设置及其作用:

  • table中设置的height设置的是最小值,也就是当表格中的内容或者行高总值超过这个设置值时,会自动增大表格的height值,当表格中的内容或者行高没有达到这个值时,会自动扩大到这个值。
  • table中设置的width值一般为表格宽度的最大值,不能改变,即使内部的内容宽度超过也不能改变。(这个内部内容如果是图片的话是可以改变表格宽度的。)

2、tr标签中width和height设置及其作用:

  • tr标签里面的width设置不起任何作用,因为从第一点可以看出,表格的width是不能改变的,tr标签当然就不起作用了。
  • tr中的height设置和几个tr之间的设置有关。当几个tr都设置了height的具体数值时,各个tr的height按照设置的值的比例来分配总的height值,注意这里说的是总的height值。当几个tr都没有设置height具体值时,平均分配总的height值。当有的tr设置了具体的数值,有的没有设置具体的数值为默认时,先保证各个tr的基本需要,剩下的再满足设置了具体值的tr,之后再全部给没有设置具体值的tr。最后一种情况还要考虑总的宽度不够tr总的设置值的情况,不够的话要满足tr的基本需要,这里会自动增大表格的height的。然后再考虑设置了height的tr,最后考虑没有设置height的tr。

3、td标签中width和height设置及其作用:

  • td中的width,某一列td的width是所处的这一列所有td的width最大值。各个td之间的宽度分配按照第二条中各 tr的height分配规律,有一点不同的是全部是默认的情况下,各td的width不是平均分配,而是根据各自的实际内容按比例分配。
  • td的height设置,各个td的height是td所在的行的最大高度,然后各个行的高度情况和tr中的height分配原则是一样的。还有一点要注意,就是td的height和tr的height之间的关系。首先肯定是根据内容的需 要,在这个基础上,再根据设置的值来确定,哪个设置的值大就按照哪个,如果一个设置了值一个没有设置值,那么按照设置值的算。