Visualizzazione dei risultati da 1 a 8 su 8

Discussione: layout per stampa

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687

    layour per stampa

    allora ho l'esigenza di stampare dei documenti/dati che abbiamo un header e footer fisso per ogni foglio.

    ho trovato questo sul web e funziona ma con explorer, con chrome no.....come si può modificare in modo che funzioni con quello anche?
    codice:
    
    <html>
    <head>
    
    <title>Scrollable Table with Fixed Header, repeat print header and footer</title>
    
    <meta name="keywords" content="fixed table header; non-scroll header; fixed
    footer; freeze header; CSS tips; print repeating headers; print repeating
    footers">
    
    <link rel="stylesheet" href="basic.css" type="text/css">
    
    <style type="text/css">
    
    div.tableContainer {
    width: auto; /* table width will be 99% of this*/
    /*height: 295px; /* must be greater than tbody*/
    overflow: auto;
    margin: 0px;
    }
    
    table {
    width: 99%; /*100% of container produces horiz. scroll in Mozilla*/
    border: none;
    background-color: #FFFFFF;
    }
    
    table>tbody { /* child selector syntax which IE6 and older do not support*/
    overflow: auto;
    /*height: 250px;*/
    overflow-x: hidden;
    background-color: #FFFFFF;
    }
    
    thead tr {
    position:relative;
    top: expression(offsetParent.scrollTop); /*IE5+ only*/
    background-color: #FFFFFF;
    }
    
    thead td, thead th {
    text-align: center;
    border-bottom: 1px solid #999999;
    background-color: #FFFFFF;
    }
    
    td {
    text-align: justify;
    background-color: #FFFFFF;
    }
    
    tfoot td {
    text-align: center;
    border-top: 1px solid #999999;
    background-color: #FFFFFF;
    }
    
    td:last-child {padding-right: 20px;} /*prevent Mozilla scrollbar from hiding cell content*/
    
    </style>
    
    
    <style type="text/css" media="print">
    
    div.tableContainer {overflow: visible; }
    table>tbody {overflow: visible; }
    td { } /*adds control for test purposes*/
    thead td { }
    tfoot td {
    text-align: center;
    border-top: 1px solid #999999;
    }
    
    thead {display: table-header-group; }
    tfoot {display: table-footer-group; }
    thead th, thead td {position: static; }
    
    </style>
    
    </head>
    <body>
    
    <div id="container">
    <div class="tableContainer">
    <table cellspacing="0">
    <thead>
    <tr>
    <td>HEADER</td>
    </tr>
    </thead>
    <tfoot>
    <tr>
    <td>FOOTER</td>
    </tr>
    </tfoot>
    <tbody>
    <tr>
    <td>Contenuti bla bla bla bla bla
    
    </td>
    </tr>
    </tbody>
    </table>
    
    </div>
    
    </div>
    
    </body>
    
    </html>

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,662
    @nikasil

    ricorda che, come tutti, sei tenuto ad utilizzare il tag CODE per postare codice. grazie

    non funziona bene nemmeno si opera e safari
    forse è il caso di cambiare strategia?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    a scusa...per il tag CODE....

    per cambiare strategia....mi consigli qualcosa?

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,662
    cerca Page break Property in css
    anche qui www.w3schools.com

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    mah...nella mia infinita stupidità ne sò quanto prima; vedo CSS page-break-inside, after e before....ma non ho capito dove/come metto l'header, come il footer e come i dati tra i due...

    codice:
    <html> <head> <style> @media print { table {page-break-inside:avoid} } </style> </head> <body> .... </body> </html>
    inside per dire sarebbe da utilizzare per i dati, before per header, before per footer? boh

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    ho trovato questo esempio che m'ha fatto capire di +

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento senza titolo</title> <style> h2 { page-break-before: always } </style> </head> <body> <h1>Titolo dell’articolo</h1> 
    
    Questo paragrafo costituisce un’introduzione all’articolo
    
     <h2>Primo capitolo</h2> 
    
    Paragrafo 1
    
     
    
    Paragrafo 2
    
     [...] 09. <h2>Secondo capitolo</h2> 
    
    Paragrafo 1
    
     
    
    Paragrafo 2
    
     </body> </html>
    ma quello che nn ho capito....è come faccio a far si che l'header di una tabella, tanto per fare un esempio, mi venga stampata in testa ad ogni foglio mentre i contenuti sotto ovviamente sono progressivi?


  7. #7
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,662
    per favore le prossime volte assicurati di aver indentato ben il codice,
    altrimenti non si legge

    da quel che ho capito tu stai cercando una soluzione che facca da sola,
    invece devi prepararla tu.

    nella pagina stampi l'header, poi i tuoi N record, poi il footer
    quindi al footer applichi page-break-after:always

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    provo

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 © 2024 vBulletin Solutions, Inc. All rights reserved.