Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Kako da postavim za stampu samo jedan deo html stranice?

  • 5 odgovora
  • 3.601 pregleda

Najnovija ↓

Kako da postavim za stampu samo jedan deo html stranice? 15.06.2011. u 21:02 · pre 187 meseci #1
Hteo bih da na sajtu postavim takse za uplatu registracije vozila. Pa me interesuje da li postoji mogucnost da se direktno sa mog sajta stampa uplatnica koja je tamo vec generisana?
Potpis
Pencha
Re: Kako da postavim za stampu samo jedan deo html stranice? 15.06.2011. u 21:51 · pre 187 meseci #2
Imas dva nacina:

1. da za to otvoris novu stranu koja ima samo uplatnicu na sebi i nista vise (tj samo ono sto zelis da se ostampa)

2. da samo za tu stranu dodas "print css" koji ce prilikom stampanja da sakrije sve ostale elemente na strani, recimo da imas ovakvu stranu:

Code (html):

<html>
   <head>
      <!-- ... -->
   </head>
   <body>
      <!-- ... neki sadrzaj ovde... -->
      <div class="printme">
         <!-- ovde sta zelis da se stampa -->
      </div>
      <!-- ... jos sadrzaja ovde... -->
   </body>
</html>
 


potrebno je da u head ulinkujes jedan css fajl koji ce se koristiti samo na toj strani (tj svim stranama namenjenim za stampu):

Code (html):

<link rel="stylesheet" href="css/printme.css" type="text/css" media="print" />
 


ovo media="print" znaci da ce se taj css koristiti samo prilikom stampanja.

sadrzaj printme.css-a je sledeci:

Code:

* { display: none !important; }
.printme, .printme * { display: block !important; }  
/* mada ovo nije bas najpametnije resenje, 
    mozda bi bilo bolje koristiti visibility umesto display, al onda bi
    morao da se igras i sa pozicioniranjem vidljivih elemenata */


naravno, ovo ne mora da se radi sa odvojenim css fajlom, moze pomocu media query-ja da s eubaci u postojeci css fajl i da se ti stilovi kontrolisu nekom klasom na body elementu...
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Kako da postavim za stampu samo jedan deo html stranice? 16.06.2011. u 03:04 · pre 187 meseci #4
moguce da onaj !important kod display: block nije dovoljno jak da nadjaca postojece selektore na strani. u tom slucaju ces morati da sakrijes sve elemente sem tog koji hoces da stampas (umesto da sakrijes sve pa onda da pokusas da prikazes taj sto ti treba). ako imas npr tri elementa u body-ju, sa klasama prvi, drugi i treci a hoces da samo drugi bude vidljiv prilikom stampe onda u css stavi samo .prvi, .treci { display: none !important; }
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Kako da postavim za stampu samo jedan deo html stranice? 16.06.2011. u 08:52 · pre 187 meseci #5
Problem je u:
Citat:
Aleksandar Ružičić:
Code:

* { display: none !important; }


koji sakrije body i html elemenat, a u kojima se nalazi elemenat sa klasom printme

Pokušaj umesto ovoga da staviš:
Code:

body * { display: none !important; }


A isto će nastati problem ukoliko se .printme nalazi unutar nekog elementa, jer će ponovo biti sakriveni parent elementi.
Potpis
Banned - Not available
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme