2011-04-06 11 views
22

Veri tablolarımı, CSS ile ayrı ayrı adreslenebilecek bölümlere bölmek için genellikle THEAD, TBODY ve TFOOT öğelerini kullanırım. Ayrıca her zaman örtülü bir TBODY etiketi olduğunu anlıyorum.İç TABLE bölümleri neden doğrulamak için THEAD TFOOT TBODY'ye gitmeli?

Bana ne yapması, bunların doğrulanması için sıraya girme sırasıdır.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Table Validation Test</title> 
</head> 
<body> 

<table> 

<thead> 
<tr> 
    <th scope="col">Enemies List</th> 
</tr> 
</thead> 

<tfoot> 
<tr> 
    <td>&copy; Bomb Voyage</td> 
</tr> 
</tfoot> 

<tbody> 
<tr> 
    <td>Mr. Incredible</td> 
    <td>Elastigirl</td> 
    <td>Gazer Beam</td> 
</tr> 
</tbody> 

</table> 
</body> 
</html> 

Ama bu olmaz: BU tablo doğrular

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Table Validation Test</title> 
</head> 
<body> 

<table> 

<thead> 
<tr> 
    <th scope="col">Enemies List</th> 
</tr> 
</thead> 

<tbody> 
<tr> 
    <td>Mr. Incredible</td> 
    <td>Elastigirl</td> 
    <td>Gazer Beam</td> 
</tr> 
</tbody> 


<tfoot> 
<tr> 
    <td>&copy; Bomb Voyage</td> 
</tr> 
</tfoot> 

</table> 
</body> 
</html> 

geçerli bir gider BAŞ, AYAK, VÜCUT; hangi bir anlam ifade etmiyor. Ayağı tablonun altına koymak, masa ile insan vücudu arasındaki benzerliği koruyacaktır. Fakat bir sebepten dolayı bu emir geçersiz sayılır.

Neden olduğunu bilen var mı?

cevap

45

spec neden sağlamaktadır: kullanıcı arayüzlerinin veri (potansiyel olarak çok sayıda) tüm satırları almadan önce ayak hale böylece

Tfoot bir TABLO tanımı içinde tbody önce gelmelidir.

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

herhangi tarayıcılar gerçekte bu davranışı izlerseniz bilmiyorum ve HTML 4 düzen ve daha mantıklı düzeni hem işlemek için HTML5'in değiştirildi:

yılında bu sıra ile: isteğe bağlı olarak bir başlık elemanı, bunu takiben sıfır veya daha fazla ortak grup elemanı, isteğe bağlı olarak bir inci elemanı, ardından isteğe bağlı olarak bir ayak elemanı, ardından sıfır veya daha fazla tbody öğesi veya bir veya daha fazla tr eleman, ardından isteğe bağlı olarak bir ayak parçası eleman (ancak toplamda sadece bir ayak elemanı olabilir).

http://www.w3.org/TR/html5/tabular-data.html