2013-05-08 68 views
0

以下哪項出錯?th colspan失敗w3c驗證

<table> 
<tr> <th> Blah </th> <th colspan="2"> Something </th> </tr> 
<tr> <td> .. </td> <td colspan="2"> ... </td> </tr> 
</table> 

報告說,通過元素3established 表列日有沒有在它開始的細胞。

回答

0

我驗證你的HTML代碼有兩個文檔類型:

  • HTML5;
  • XHTML 1.0 Strict。

並且您的文檔已成功檢查爲有效。 你應該嘗試重新驗證它。

+0

我使用<!DOCTYPE html>,這對應於HTML5對不對? – 2013-05-08 00:35:33

+0

其實我上面寫錯了,更正了。你是對的,以前經過。我更新了上面的代碼。無論如何,我不知道爲什麼它仍然不起作用,但事實證明,我甚至不需要colspan。 – 2013-05-08 00:46:07

+0

不,以<!!doctype html>'爲前綴的代碼不會*在http://validator.w3.org驗證 – 2013-05-08 06:02:07

3

如錯誤消息所示,在第三列中沒有單元格開始。因此違反了HTML5中定義的HTML表格模型,而在技術上卻違反了4.9.12 Processing model。基本上,重點是您不能創建一個由僅由組成的列,該列由從先前列開始的單元格創建,並通過colspan擴展到其他列。

使用早期版本的HTML時,錯誤不會被捕獲,因爲對於它們來說,驗證是DTD驅動的,而DTD(文檔類型定義,用SGML或XML編寫的一組形式規則)可以只描述相對簡單的語法規則。

這個問題的最常見原因似乎是通過使用colspan來使得單元格變寬的一個被誤導的想法。相反,請使用width屬性,或者通常更優選使用CSS中的width屬性。