2010-09-28 34 views
10

¿XHTML tiene una "opinión" con respecto al uso de <thead>, <tfoot> y <tbody>?Importancia de XHTML thead, tfoot y tbody

¿Hay un caso en el que se debe utilizar?

Gracias.

+0

Siempre que tenga una ''

está siempre ** ** utilizando al menos un '' . Se requiere un elemento '' en cada tabla, pero las etiquetas de apertura y cierre son opcionales (se pueden deducir de la presencia de ''). Esto será evidente si solicita un '' para su '.parentNode' o un'
'para sus' .childNodes' incluso cuando dejó el '' fuera del documento. – Gareth

+0

@Gareth - no en XHTML verdadero. es decir, cuando se sirve como application/xhtml + xml. – Alohci

Respuesta

6

Los THEAD, tbody, y elementos tfoot en HTML se utilizan para filas de la tabla grupo en secciones lógicas en base a su contenido . Hay dos razones principales que te gustaría hacer esto:

  • para permitir que el cuerpo se desplaza de forma independiente de la cabecera y/o pie de página
  • Para que sea más fácil de aplicar diferentes reglas de estilo diferentes secciones de la tabla.

como se ha dicho aquí What is benefit of <thead>

Si está utilizando tablas para hacer diseño no utilice estos.Si muestra datos tabulares, úselos.

Y si no tiene nada que poner en tfoot, entonces no agregue esto.

encontrará algunas buenas respuestas aquí también What is benefit of <thead>

+0

Gracias m-s-g. Entonces, si escribo '

', '' no se agregará automáticamente en el navegador? Por ejemplo, IE hace esto cuando inspecciona una tabla con Developer Tool. – Francisc

+0

@Francisc: No, siempre se agrega un '' implícito. – DisgruntledGoat

+0

Muy bien, gracias. – Francisc

8

Ellos le permiten añadir semántica a su mesa, y también le permiten el estilo de la cabeza y los pies de la mesa sin introducir redundantes clases/ids.

No puedo pensar en una situación en la que tiene usarlo, aunque sé que algunos plugins jQuery utilizan los pies cabeza & para controlar los comportamientos.

Si los datos tabulares necesita encabezados y filas de resumen, usarlos, si no lo hacen no

5

Las únicas reglas, que yo sepa, es que el thead (si se usa) se debe definir primero y los tfoot (si se utiliza) antes los tbody (algo contrario a la intuición, en mi opinión, pero ellas son las reglas).

Creo que el propósito de thead es parcialmente para propósitos de impresión, permitiendo que las columnas impresas en una segunda página tengan el thead repetido, para que los datos tengan más sentido.

En teoría también podría permitir un desplazamiento tbody en el caso de mesas largas, con cabeceras fijas:

Esta división permite a los agentes de usuario para soportar el desplazamiento de los cuerpos de mesa de forma independiente de la cabeza de la mesa y el pie. Cuando se imprimen tablas largas, la información del encabezado y pie de la tabla puede repetirse en cada página que contiene datos de tabla.

Fuente: http://www.w3.org/TR/html401/struct/tables.html#edef-TFOOT

Esto no significa, sin embargo, funciona actualmente (sin utilizar al menos dos tablas, creo).

El beneficio más grande, sin embargo, como @Glenn Slaven notas, parece ser semántica.

+1

La idea de poner '' antes de '' es para que la información de resumen (pie de página) se pueda representar mientras que una tabla de datos grande todavía está descargando – Gareth

+0

@Gareth, sí. Tiene * sentido * hacerlo de esa manera, pero se siente, como digo, contra-intuitivo es todo. =) –

+3

Tenga en cuenta que es válido colocar el 'tfoot' antes o después del' tbody's en (X) HTML5. El razonamiento de Gareth es sólido, pero como David, la mayoría de las personas encontraron la forma HTML4 de hacerlo contra-intuitivo, por lo que las reglas fueron relajadas. No importa la forma en que funcionan los navegadores, es solo un cambio de validez. – Alohci

Cuestiones relacionadas