2012-04-24 12 views
5

Sto cercando le specifiche di HTML5 in termini di tabelle. Sto facendo un'applicazione web ha un sacco di tabelle di dati.Validità HTML5 delle tabelle nidificate

Queste tabelle hanno generalmente una riga di database associata a una riga di tabella. Va tutto bene. Tuttavia un bambino con problemi particolari ha così tante colonne da dover essere distribuito su due righe nella tabella. Così i tavoli comuni sono (in pseudo):

<table> 
<thead> 
<tr> 
    <th>Header</th> 
</tr> 
</thead> 
<tbody> 
<tr> 
    <td>Data</td> 
</tr> 
</tbody> 
</table> 

e la riga problematica sono come questo:

<table> 
<tbody> 
<tr> 
    <th>Header row 1</th> 
</tr> 
<tr> 
    <td>Data</td> 
</tr> 
<tr> 
    <th>Header row 2</th> 
</tr> 
<tr> 
    <td>Data</td> 
</tr> 
</tbody> 
</table> 

Quindi la mia domanda è ora: tavoli E 'valido hanno nidificato in HTML5? Possiamo facilmente convenire che è molto brutto. Ma sto considerando solo la validità qui.

Se riesco ad avere tabelle annidate, risolverà qualsiasi numero di problemi relativi all'ordinamento e alla modifica di queste tabelle (è stata implementata una funzionalità di semi-griglia di dati). In questo modo la tabella principale può ancora consistere di una sola riga con due colonne. la data ordinabile e la tabella incorporata con i dati.

Che ne dici? Ho cercato le specifiche ma non ho trovato nulla di definito.

+0

Il modo semplice per scoprirlo: http://validator.w3.org/ –

+2

Credo che sia più valido che sia mai stato. Ma non puoi ottenere ciò che vuoi con 'rowspan' e' colspan'? –

+0

Sì. Tuttavia è 1) un'applicazione intranet e non è accessibile pubblicamente e 2) vorrei avere un suggerimento prima di refactoring il codice, solo per ripristinare se non convalida;) –

risposta

11

Questo documento, che contiene solo una tabella nidificata:

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>A nested table</title> 
</head> 
<body> 
    <table> 
     <tbody> 
      <tr> 
       <td> 
        <table> 
         <tbody> 
          <tr> 
           <td>Nested</td> 
           <td>Table</td> 
          </tr> 
         </tbody> 
        </table> 
       </td> 
      </tr> 
     </tbody> 
    </table> 
</body> 
</html> 

... è valido, secondo http://validator.w3.org/nu/:

Il documento convalida in base allo schema specificato (s) e alla ulteriore vincoli controllati dal validatore.

+0

Per qualche motivo il validatore non funziona per me. Ma prendo il tuo lavoro per questo;) Grazie :) Modifica: Ora lo ha fatto dopo che qualcuno ha preso a calci un proxy. Per fortuna ottengo lo stesso risultato;) –

-4

Da quello che ho sentito (qualcuno che è uno sviluppatore web più esperto, per favore compilare più su questo), tabelle nidificate hanno bisogno di essere in realtà annidato all'interno di <td> elementi che a loro volta nidificati all'interno <tr> ' s e altre tabelle, non solo all'interno delle tabelle o delle righe direttamente. Io per primo trovo che sia un vero dolore ... ma vabbè.

Problemi correlati