2010-05-01 5 views
16

Я всегда вижу т-й тег, который используется только в первой строке таблицы. Есть ли какая-то конкретная причина, почему его нельзя использовать для создания «левых» заголовков вдоль самого левого столбца. Это плохая форма, или это нормально.Являются ли заголовки таблиц только для верхнего ряда в html?

В принципе, стол с заголовками в верхнем ряду и в самом левом столбце, причем самый верхний левый квадрат пуст.

например.

<table> 
    <tr> 
     <th><!--empty--></th> 
     <th>Top 1</th> 
     <th>Top 2</th></tr> 
    <tr> 
     <th>LeftHeader?</th> 
     <td>data1</td>  
     <td>data2</td></tr> 
</table> 
+0

Нет, это абсолютно законно. –

+0

Автозаполнение непустого элемента, например '', ** не действует **. Используйте валидатор и проверьте для себя. – acdcjunior

ответ

16

Это действительно, однако, при использовании <thead> она должна быть первой строкой. Это справедливо:

<table> 
    <thead> 
     <tr> 
      <td>0,0</td><td>1,0</td><td>2,0</td> 
     </tr> 
    </thead> 
    <tr> 
     <th>0,1</th><th>1,1</th><th>2,1</th> 
    </tr> 
</table> 

Но это не так:

<table> 
    <tr> 
     <td>0,0</td><td>1,0</td><td>2,0</td> 
    </tr> 
    <thead> 
     <tr> 
      <th>0,1</th><th>1,1</th><th>2,1</th> 
     </tr> 
    </thead> 
</table> 

Это недопустимый HTML, и вы можете дважды проверить, что с the w3C markup validation service хотя прежде чем это сделать, вам придется добавить <!DOCTYPE> декларацию и отдых действительного документа HTML.

Смежные вопросы