Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881

    [CSS] Problemi di stampa

    Ho predisposto un CSS per la stampa in cui elimino tutti i <div> che non interessano. So che la stampa lascia ancora parecchio a desiderare ma, ... tentar non nuoce ... dice un detto.
    Ho due problemi:
    [list=1][*]quando ci sono delle immagini nella pagina tutto va bene se la stessa non corrisponde al salto pagina, altrimenti ne stampa parte su una pagina e parte sull'altra sovrapponendo tra l'altro la prima riga all'immagine. E' possibile evitare ciò?[*]Se nella pagina ho una tabella che supera le dimensioni del foglio, è possibile far sì che venga ristampata l'intestazione della tabella per ogni pagina?[/list=1]

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Risposta ad ambedue:
    In teoria si`, in pratica occorre vedere il browser.

    Per il punto 1, esistono ( http://www.w3schools.com/css/css_ref_print.asp )
    page-break-before
    page-break-after
    page-break-inside

    Per il punto 2, e` prima necessario che il markup sia corretto: devi aver usato il <thead> per definire l'intestazione (vedi descrizione in http://www.w3schools.com/tags/tag_thead.asp ).
    Poi ogni browser interpreta a modo suo.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    Allora:
    punto 1: ho provato a mettere un
    codice:
    img { page-break-inside: avoid }
    ma ... niente. Funziona solo sugli elementi tipo

    o simili?

    punto 2: La tabella è impostata secondo i criteri di accessibilità, quindi con summary, caption, thead, tbody e tfoot. Quindi?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Quindi??!! Chiedilo a Bill!!

    Il problema sta nell'interpretazione che ne fanno i browser. Se fai una ricerca nel forum, dovrestri trovare qualcosa (non sono moltissimi i post sul media="print").

    Se ricordo bene, il punto 1 dovrebbe funzionare nel browser FF, mentre non credo funzioni in IE (pero` solo -before e -after, non -inside).
    Il punto 2 non mi risulta sia stato implementato (ma forse le versioni piu` recenti ce l'hanno).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    Scusa. "Quindi" voleva dire. Ho già tutto e ora come devo gestirlo?
    Ma probabilmente volevi dire che inserendo quella struttura dovrebbe già fare il suo dovere (o no?)

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Si`, il significato del tuo quindi l'avevo capito, e la risposta (scherzosa/sarcastica) ne e` la prova.

    Stando alle specifiche dei tag hai fatto tutto bene, ma e` noto che i browser seguono le specifiche quando fa loro comodo (o, meglio, quando sono in grado di seguirle).

    Credo che i CSS di stampa siano usati poco, e quindi anche lo sforzo dei programamtori e` limitato. E` un peccato, perche` sarebbe una cosa molto utile e che risparmierebbe un mucchio di tempo e di fegato ai programamtori.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    In effetti il page-break-inside non gli fa un baffo nè a IE nè a FF.
    Del resto non posso impostare page-break-after generico altrimenti ad
    ogni immagine salterebbe pagina ...
    Per la seconda questione .. idem. Tutta la mia bella impostazione viene bellamente ignorata.
    Speriamo che presto venga presa in maggior considerazione la gestione della stampa.
    Per il mio caso è improponibile creare una versione apposita per la stampa trattandosi di centinaia di pagine di contenuti. Per ora mi accontenterò di quello che passa il convento.

    PS. Grazie Mich.

  8. #8
    A suo tempo ho utilizzato questo:
    codice:
    thead {
    	display: table-header-group
    Fai però delle verifiche perché sinceramente non mi ricordo se c'era dell'altro da mettere.

  9. #9
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    Mmm... sembra che funzioni ... Faccio qualche prova + approfondita xchè mi sembra cha abbia comportamenti un po' strani in FF, ma è già un grosso passo avanti.
    Grazie.

  10. #10
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,881
    Allora: ho fatto un po' di prove e la soluzione di Toh!pisa serve per IE ( :rollo: ) mentre FF funziona perfettamente anche senza (e te pareva).
    Solo che FF ha un altro problema. Se inserisco
    codice:
        <caption>Titolo tabella</caption>
    stampa la prima pagina della tabella, saltando prima ad una pagina nuova, nella seconda mette solo head e foot e dalla terza in poi .. niente, scomparse. A video tutto OK. Se elimino <caption> tutto torna regolare e mi stampa la mia belle tabella con head e foot e salti pagina corretti.

    vi indico il codice CSS
    codice:
    .tabdati1 caption { font-size: 1.5em; color: #444; margin: 0em auto;
    clear: left;  }
    Qualcuno ha idee?

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.