Ho lavorato per una tabella di intestazione fissa con altezza del fluido, altezza del fluido, HTML/CSS senza successo. Spero che tu possa indicarmi una soluzione JavaScript o jQuery.Come posso creare una larghezza del fluido, un'altezza del fluido, una tabella di intestazione fissa con jQuery?
Criteri:
- tabella deve riempire tutta la larghezza della finestra del browser (almeno contenitore)
- tabella deve riempire tutta l'altezza del contenitore disponibili nella finestra del browser
- tbody deve scorrere y se non c'è abbastanza spazio per tutte le righe
- thead ° e tbody td colonne devono allinearsi
puro HTML/CSS è un busto. Che ne dici di jQuery o JavaScript?
Ecco un violino: http://jsfiddle.net/JXWfC/6/
In definitiva si avrà bisogno di lavorare su IE7 +, e le versioni moderne di Chrome e Firefox.
Ecco alcuni marcatura della mia pagina di base:
<div class="container">
<div class="sidebar">
nav here
</div>
<div class="content">
<table>
<thead>
<tr><th>column 1</th><th>2</th><th>three</th><th>this is column four</th></tr>
</thead>
<tbody>
<tr><td>data</td><td>can</td><td>have</td><td>different widths: not all the same</td></tr>
<tr><td>table</td><td>-</td><td>should</td><td>fill 100% width and 100% height</td></tr>
<tr><td>and</td><td>-</td><td>should</td><td>not require all td's to be same width</td></tr>
<tr><td>but</td><td>-</td><td>percentage</td><td>% widths are just fine</td></tr>
<tr><td>and</td><td>if</td><td>there's</td><td>too many rows, it should scroll y (overflow-y: scroll)</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
<tr><td>sample</td><td>1</td><td>row</td><td>Lorem ipsum dolor sit amit.</td></tr>
</tbody>
</table>
</div>
</div>
Perché è puro HTML/CSS una _bust_? I tuoi criteri non sembrano molto impegnativi. – adamb
@adamb, non ero in grado di farlo funzionare. Puoi mostrarmi? Dalla mia ricerca questo è un problema comune. Sì, non sembra troppo impegnativo, ma ci sono un paio di sfide significative: 1) l'altezza è sempre una sfida, 2) lo scorrimento di overflow funziona solo quando sono visualizzate le celle della tabella: blocco che rovina l'allineamento della larghezza del fluido delle colonne (è possibile impostare una larghezza di pixel statici per ogni colonna, ma non per percentuali fluide). Questo è quello che mi ha spinto a cercare una soluzione js. Ma sarei felicissimo di sbagliare qui. ;) – Ryan
Quando dici che vuoi riempire l'intera altezza della tabella, intendi che le celle della tabella devono espandersi verticalmente? Per esempio, se la mia pagina è alta 900px e ho solo 3 righe nella tabella, dovrebbero essere alte 300px? In caso contrario, potresti chiarire di cosa hai bisogno? – DACrosby