2015-12-02 216 views
0

根據HTML5描述,屬性rowspan可能具有值0.在這種情況下,值零意味着該單元格將橫跨行組中給定列的所有剩餘單元格。爲什麼colspan屬性不能設置爲零?

然而,colspan的值可能不等於零。

因此出現一個問題,對屬性colspan的這種限制的原因是什麼?

+0

您爲什麼認爲colspan可能不等於零?你能否提供你看到這種限制的來源? – Banana

+0

@Banana看到這裏http://www.w3.org/TR/2014/REC-html5-20141028/tabular-data.html#attributes-common-to-td-and-th-elements –

+0

根據該頁,那些屬性'colspan,rowspan'不能用於重疊單元格,根據[Mozilla Dev](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attr-這是在HTML5中對colspan進行限制的原因 – Banana

回答

0

這是從https://lists.w3.org/Archives/Public/public-html/2011Aug/0293.html引用的,但它詳細解釋了這個問題。

在HTML4,「列跨度」和TD/TH元件的「rowspan的」屬性已被允許具有零值(「0」): http://www.w3.org/TR/html4/struct/tables.html#adef-colspan

,這是非常有用的,當列或行數事先未知。 強制網頁編輯器手動計算列號或行號 是有害的,而瀏覽器可以輕鬆地自動執行此操作。

在規範開發中有一個已知的規則:當有兩個 規範的獨立實現,那麼規範 狀態被提升爲「推薦」(「候選」或「提議」)。

但是已經有兩個(當然,1.5)工作零合併單元格/行跨度的獨立 實現:

  1. 火狐(包括零列跨度和行跨度完全工作)

  2. 和Opera(支持rowspan =「0」,不支持colspan =「0」)。

因此,合併單元格/行跨度的零值是非常不錯的人選,以保持在 HTML規範,此外,鼓勵其他瀏覽器廠商對 儘快實現這個非常有用的功能。

沒有嚴重的理由從HTML規範中刪除colspan/rowspan 的零值。這不是「在所有的 處未實現」的東西,它已經非常實用並且應該在HTML規範中保持完整 。

而且HTML5規範(4.9.11)明確規定,合併單元格應是非零和行跨度可以與它的意思是零沿爲零。 http://www.w3.org/TR/html5/tabular-data.html#attr-tdth-colspan

快速回答爲什麼會說HTML5規範明確規定了這個限制。國際海事組織我沒有看到爲什麼瀏覽器不會保留零的意義,以火狐瀏覽器的方式行事,而不是遵循規範。

0

注意:只有Firefox支持colspan =「0」,它有特殊的含義(請看下面的「屬性值」表)。

請訪問以下http://www.w3schools.com的鏈接:

http://www.w3schools.com/tags/att_th_colspan.asp

這將幫助你....感謝名單

更多有關的研究:

https://developer.mozilla.org/en/docs/Web/HTML/Element/td

colspan

此屬性包含一個非負整數值,指示單元格擴展的列數。其默認值是1;如果其值設置爲0,則它​​將延伸到<colgroup>的末尾,即使隱式定義了該單元所屬的末端。高於1000的值將被視爲不正確,並將被設置爲默認值(1)。

注意:在HTML5中,此屬性只接受大於零的值,因爲它不能用於重疊單元格。此外,Firefox是唯一支持HTML 4.01規範中定義的0值的瀏覽器。

相關問題