Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Header tabella fisso

  1. #1

    Header tabella fisso

    Ciao a tutti, spareste consigliarmi un link in cui trovare il modo di rendere fisso l'header di una tabella mentre il contenuto scrolla con la pagina?

    grazie
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  2. #2
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    Intendi qualcosa del genere?
    CSS
    div#contenitore{min-height:100px; height:auto!important; height:100px;}
    div#tabella {height:560px; overflow:auto

    HTML
    <div id="contenitore">
    <table>
    <tr>
    <th width=30px>Tit</th>
    <th width=130px>Titolo</th>
    <th width=40px>Tit 3</th>
    <th width=230px>Tit 4</th>
    </tr>
    </table>
    <div id="tabella">
    <table>
    <tr>
    <td width=30px>val 1</td>
    <td width=130px>val 2 </td>
    <td width=40px>val 3</td>
    <td width=230px>val 4</td>
    </tr>
    </table>
    </div>
    </div>

  3. #3
    a dire il vero il codice che mi hai postato tu a me si composta come una tabella normale (magari ho sbagliato io) se l'ultima riga della tabella è all'esterno dell'area visualizzabile e scrollola pagina l'intestazione della tabella scompare...
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il codice di salasir contiene un errore sintattico e manca di un elemento di scroll.

    L'errore sintattico perche` rende con due tabelle quello che in realta` e` una tabella. Questo ha implicazioni gravi per l'accessibilita` ed inoltre in caso di problemi di larghezza le colonne potrebbero venir disallineate.

    L'idea comunque era di mettere una altezza massima al <div id="tabella"> e definire overflow:scroll; nei CSS.

    La soluzione corretta (non so quanto sia implementata dai browser attuali) e` fare una tabella unica, definire l'intestazione coni tag corretti (<th> e <thead>), raggruppare le altre righe in un <tbody> e dare quindi altezza massima e overflow:scroll; al <tbody>.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    scusa ma di css non è che sia proprio un maestro (anzi..) cosa intendi per "altezza massima"? in altre parole cosa dovrei scrivere nel tbody oltre a
    codice:
    <tbody style="overflow:scroll;">
    ?
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  6. #6
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    Sicuramente non è una soluzione molto elegante, ma a me sembrava funzionare.
    Chiaramente se si usa la scrollbar della pagina la testata scompare, ma se le righe superano l'area impostata si visualizza una scrollbar nella tabella che ti consente di mantenere la posizione della pagina (una specie di iframe per intenderci).

    Comunque se si riesce a realizzare la soluzione di Mich_, può essere interessante per alcuni utilizzi. Ho provato a impostare la tabella secondo le sue indicazioni ma non funziona. Sicuramente ho sbagliato qualcosa.

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Dipende da cosa c'e` fuori.

    In linea di massima (per browser conformi) puoi mettere uno dei seguenti:
    max-height: 80%;
    max-height: 30em;
    max-height: 400px; /* non valido per pagine accesibili */

    Oppure puoi limitare l'altezza tramite un blocco che contiene la tabella, oppure la tabella stessa.

    Nota peraltro che il browser IE non supporta il max-height, per cui occorre lavorare con gli hack (vedi "link utili")
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    dai miei "esperimenti" (pochi) sulle tabelle e CSS no notato che purtroppo IE non permette lo scroll (overflow:scroll) direttamente sulle celle delle tabelle e si è costretti a inserire div per farlo funzionare...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.