2012-01-22 59 views
2

我使用下面的HTML代码制作日历:HTML表colspan属性

<!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的合并单元格,这样我可以告诉一个项目是否发生只是在早晨或一整天等

在上面的例子中,我想要在第一个单元格(星期一上午)显示“Item1”,并从星期一下午到星期五显示“Item2”。

但是,在查看输出时,“Item1”占用整个Mon,“Item2”从周二到周五显示。

是否可以做我想做的事情?

感谢

回答

1

我认为问题是,你实际上必须有colspan="1"一排,以便您的跨度,以实际工作。

如果你实际上代表AM/PM在您的日历,为什么不添加行下的“周一周二至周五...”行,像这样:

<!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>

+0

感谢您的回复,这完成了这项工作。有人向我提出这个建议,但我希望避免,因为日历最终可能会扩大到一个月的观点,而31 AM/PM可能会有点混乱。再次感谢 – chester600

+0

好吧,你可以像其他大多数日历一样,为月视图制作单独的视图。另外,如果这回答了你的问题,你介意接受答案吗? – Frost

0

试试这个:

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

感谢您的快速回复。这样做为Mon的第二个单元格放置了一个空单元格,我希望Mon的第二个单元格成为“Item2”单元格的一部分。 – chester600

+0

对不起,我误解了你试图达到的目标。你在做什么应该可以工作,但浏览器中的表格渲染有时会产生不可预知的结果。尝试设置COLWIDTH属性来强制每个列使用特定大小(比如10%),看看是否有帮助... – Sparky

+0

没问题,我的问题可能有点不清楚。设置宽度似乎对表格的显示没有影响。弗罗斯特的回复似乎已经完成了这项工作。谢谢你的帮助。 – chester600