HTML表Colspan

时间:2012-01-22 14:43:52

标签: html html-table

我使用以下HTML代码制作日历:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head></head>
<body>
    <table border="1">
        <tr>
            <td colspan="2">Mon</td>
            <td colspan="2">Tue</td>
            <td colspan="2">Wed</td>
            <td colspan="2">Thu</td>
            <td colspan="2">Fri</td>
        </tr>
        <tr>
            <td colspan="1">Item1</td>
            <td colspan="9">Item2</td>
        </tr>
    </table>
</body>

每天都有2个colspan,以便我可以显示某个项目是在早上还是一整天等。

在上面的例子中,我希望“Item1”显示在第一个单元格(周一早上)和“Item2”显示从周一下午到周五。

然而,在查看输出时,“Item1”占据整个Mon,“Item2”从周二到周五显示。

我可以做我想做的事吗?

由于

2 个答案:

答案 0 :(得分:1)

我认为问题在于你实际上必须有一行colspan="1"才能使你的跨度真正发挥作用。

如果您实际上在日历中代表am / pm,为什么不在“Mon Tue ... Fri”行下添加一行,如下所示:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
  <style>
    td,th { min-width: 50px; }
  </style>
</head>
<body>
  <table border="1">
    <thead>
      <tr>
        <th colspan="2">Mon</th>
        <th colspan="2">Tue</th>
        <th colspan="2">Wed</th>
        <th colspan="2">Thu</th>
        <th colspan="2">Fri</th>
      </tr>
      <tr>
        <th>AM</th>
        <th>PM</th>
        <th>AM</th>
        <th>PM</th>
        <th>AM</th>
        <th>PM</th>
        <th>AM</th>
        <th>PM</th>
        <th>AM</th>
        <th>PM</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td colspan="1">Item1</td>
        <td colspan="9">Item2</td>
      </tr>
    </tbody>
  </table>
</body>
</html>

我还将标题放入<thead>,将实际项目放入<tbody>,并将标题设为<th>标记,而不是<td>

答案 1 :(得分:0)

试试这个:

<td colspan="1">Item1</td>
<td colspan="1">&nbsp;</td>
<td colspan="8">Item2</td>