2010-04-23 14 views
15

有什麼好處,用tad代替td有什麼好處?如果有好處...<thead>

+0

你知道,有趣的是,我首先認爲這是對於#include 一個錯字之前,我看到了標籤.... – 2010-04-23 16:54:45

+0

哇,謝謝大家所有的答案 – Praheed60 2010-04-23 16:56:04

+2

提供的答案擅長處理您關於的問題。重要的是要注意,您應該在行中將元素標記爲「表格標題單元格」。 – 2010-04-23 16:56:51

回答

18

HTML中的thead,tbodytfoot元素用於根據表格行的內容將表格行分組爲邏輯段。有你想這樣做主要有兩個原因:

  1. 爲了讓身體滾動 頁眉和/或頁腳 獨立

  2. 爲了便於應用不同 樣式規則到表格的不同 部分。

+0

此外,我認爲屏幕閱讀器可以使用'thead/tbody/tfoot'元素。雖然我找不到我在哪裏閱讀。 – 2010-04-23 22:13:36

+0

我對屏幕閱讀器沒有經驗,但我認爲這很可能。 – Syntactic 2010-04-24 04:13:35

+0

@S句法我如何實現你的觀點1?我正在使用我的表 – ishan 2013-03-27 04:08:44

2

使用thead,tfoottbody可讓您將特殊格式應用於表格的各個部分。例如,您可以在表格的所有打印頁面上包含頁眉和頁腳,或者您可以滾動tbody,而thead & tfoot將保持靜態。

0

THEAD旨在包裹所有標題行。其同行是TBODYTFOOT。如果您想通過CSS或JavaScript區分這些行,它們很有用。

4

錶行可以分別使用THEAD,TFOOT 和TBODY元素, 被分組到表 頭,表腳,以及一個或多個 表體區段。此分區使 用戶代理支持獨立於桌面和腳的 桌面滾動。當打印長表 時,可以在包含表數據的每個 頁上重複表頭和腳的信息 。

表頭和表腳應該 包含有關表 列的信息。表格主體應該包含 行表格數據。

http://www.w3.org/TR/html401/struct/tables.html#h-11.2.3

0

<thead><tbody><tfoot>馬克表的特定部分(你把行內他們)作爲表的標題,正文和頁腳。這可以用來重複每個表格的頁眉和頁腳(有些瀏覽器默認是這樣做的,其他瀏覽器似乎需要幫助)。見Repeat table headers in print mode

2

theadtd決不可比。 thead只是表格表頭和td表格單元格。

<table> 
    <thead> 
     <tr><th>head1</th><th>head2</th></tr> 
    </thead> 
    <tbody> 
     <tr><td>row1col1</td><td>row1col2</td></tr> 
     <tr><td>row2col1</td><td>row2col2</td></tr> 
    </tbody> 
</table> 

另請參閱w3schools tutorial

語義上的好處是,您可以將表格標題與表格主體(如果有的話,也可以用<tfoot>表示的表格頁腳)分開。技術上的好處是,你可以單獨設計風格,例如通過給定<tbody>固定高度和溢出,可以輕鬆實現帶有固定頁眉/頁腳的可滾動主體的表格。 不幸的是 MSIE是唯一不支持它的瀏覽器。

0

從W3C規範:

錶行可以使用THEAD,TFOOT和TBODY元件,分別被分組到表頭,表腳,和一個或多個表體區段。這種劃分使用戶代理可以獨立於桌面和桌面支持滾動桌面主體。打印長表時,表格頭部和腳部信息可能會在包含表格數據的每個頁面上重複。

希望這會有所幫助。

0

thead不常使用。它標識了table的一部分,它是「標題」,並且是瀏覽器的一種提示,即使用戶上下滾動表格的其餘部分,用戶可能也會想要看到該部分。 http://www.w3schools.com/tags/tag_thead.asp

4

我在這裏看不到但它提到,但另一個好處是,在大多數瀏覽器可以實際代碼<thead><tfoot>,並<tbody>出的順序,他們將出現在餐桌上的正確的地方。儘管很模糊,但我之前已經利用了這一點。例如:

<?php $count = 0; ?> 
<table> 
    <tbody> 
    <?php foreach($foo as $f):?> 
     <tr>...</tr> 
     <?php $count++; ?> 
    <?php endforeach; ?> 
    </tbody> 
    <thead> 
    <th>Entries (<?=$count?> total)</th> 
    ... 
    </thead> 
</table> 

我想在包頭中列出行的總數,所以我在foreach()遞增計數器,並把<thead>在底部,這樣我可以在我的頭使用的$count值。

當然不是主要的好處,但還是有益的。

+2

實際上,'thead'和'tfoot'元素必須位於'tbody'元素之前。儘管瀏覽器將會靈活並且儘可能地提供表格。 – DisgruntledGoat 2010-04-28 12:05:49

0

這是我發現的一個優點。假設你想打印一張網頁,其中有很多行,整個表格可以放在多個頁面中(當你想要打印時)。 thead實際上會導致瀏覽器將表格標題包含在所有頁面(表格擴展到的頁面)中,從而提高可讀性。你可以閱讀它here