Bagaimana cara menghapus URL dari halaman pencetakan?

102

Saya ingin menghapus URL yang tercetak di bagian bawah halaman.

Suka:

yomari.com/.../main.php?sen_n

Bagaimana cara menghilangkan atau mencegahnya dicetak?

Untuk lebih spesifik, adakah cara saya dapat mencegah URL halaman, tanggal dan judul halaman dicetak bersama, saat mencetak halaman web?

Martin Thoma
sumber
3
Bisakah itu dilakukan secara programatik? Ini benar-benar pengaturan halaman browser!
Shoban
Benar-benar hal 'pengaturan halaman browser'. Tapi saya menemukan tutorial ini sedikit membantu untuk mencetak halaman CSS.
Mayeenul Islam

Jawaban:

123

Contoh kode berikut akan bekerja untuk Anda,

<style type="text/css" media="print">
@page {
    size: auto;   /* auto is the initial value */
    margin: 0;  /* this affects the margin in the printer settings */
}
</style>

lihat jawabannya pada Menonaktifkan opsi cetak browser (header, footer, margin) dari halaman?

dan spesifikasi dari @page

Chamika Sandamal
sumber
3
Di Firefox 20.0, ini tidak menghapus URL dari Print Preview
Mirzhan Irkegulov
2
Solusi Firefox: stackoverflow.com/questions/2192806/…
Konstantin Vdovkin
Jawaban yang bagus. Lebih baik lagi, tetapkan margin bawah, misalnyamargin-bottom: 0mm;
CompanyDroneFromSector7G
2
Ini benar-benar berfungsi di Firefox 50 saya @MirzhanIrkegulov
aexl
Pembuka topik menanyakan bagaimana cara menghapus judul kolom atas dan bawah (judul nomor halaman url) yang ditambahkan browser selama pratinjau cetak.
Pavel Nazarov
39

saya menemukan sesuatu di sisi browser itu sendiri.

Coba langkah ini. di sini saya telah menyebutkan Langkah-langkah untuk menonaktifkan Header dan footer di ketiga browser utama.

Chrome Klik ikon Menu di pojok kanan atas browser. Klik Print. Hapus centang Headers and Footers di bawah bagian Options.

Firefox Klik Firefox di pojok kiri atas browser. Tempatkan mouse Anda di atas Print, klik Page Setup. Klik tab Margins & Header / Footer. Ubah setiap nilai di bawah Headers & Footers menjadi --blank--.

Internet Explorer Klik ikon Roda Gigi di pojok kanan atas browser. Arahkan mouse Anda ke Print, lalu klik Page Setup. Ubah setiap nilai di bawah Headers and Footers menjadi -Empty-.

Jah Yusuff
sumber
18

Menampilkan URL adalah preferensi klien browser, tidak dapat diakses oleh skrip yang berjalan di dalam halaman (mari kita hadapi itu, halaman juga tidak dapat mencetak sendiri secara diam-diam).

Untuk menghindari "membocorkan" informasi melalui string kueri, Anda dapat mengirimkan melalui POST

Rowland Shaw
sumber
1
noooo ... POST bukanlah mekanisme enkripsi - ini adalah petunjuk tentang kemungkinan efek samping permintaan.
troelskn
Alih-alih mencetak string kueri multi baris yang panjang. Saya akan dengan senang hati mencetak hanya url
Shoban
string kueri adalah bagian dari url. jika url terlalu panjang, Anda harus memperbaikinya.
troelskn
4
Saya tidak mengatakan itu adalah hal enkripsi - itu menghapus parameter kueri dari URL, yang merupakan faktor mitigasi yang diminta
Rowland Shaw
11

Jika Anda mengatur margin untuk halaman menggunakan kode di bawah header dan footer dihilangkan dari halaman yang dicetak. Saya telah menguji ini di FireFox dan Chrome.

<style media="print">
 @page {
  size: auto;
  margin: 0;
       }
</style>
Denver Chiwakira
sumber
1
Perhatikan bahwa ini menghilangkan margin antar halaman di Firefox. Contoh: i.imgur.com/krDlC1K.png
Blaise
8

Saya memberi tahu Anda tentang Mozilla Firefox (saya harap ini juga akan terjadi di browser lain).

Klik pada menu Firefox , Go to Print , Pilih Page Set Up dari sub menu Print. Sebuah pop akan muncul di layar Anda, di sana pergi ke tab "Margin & Header / Footer" .

Dalam itu pilih "KOSONG" untuk header / footer sesuai kebutuhan sebelum mencetak. Anda dapat memeriksa pratinjau untuk konfirmasi.

Saya harap ini akan membantu.

Mitravind Garg
sumber
7

Ini membantu saya: Mencetak halaman tanpa tautan

@media print {
    a[href]:after {
        content: none !important;
    }
}
mihaela
sumber
dapatkah Anda menjelaskan hal ini
M.suleman Khan
Saya mengalami masalah dengan hyperlink bootstrap yang menampilkan konten href pada halaman cetak. Solusi ini membantu saya memperbaiki masalah.
Mohsin
3

Anda dapat menghapus url yang menyebarkan dokumen tercetak melalui pengaturan browser Anda. Anda cukup mengklik file-> pengaturan halaman-> header dan footer mengatur semua hal sebagai kosong. Jika Anda memiliki, Anda cukup menghapus & U dari kotak teks footer. Semoga ini akan terjadi tolong kamu

Anju
sumber
2

Saya tidak tahu apakah Anda berbicara tentang footer dalam grafik Anda yang sebenarnya atau url yang sedang dilakukan proses pencetakan di dalam browser.

Jika urlnya, proses cetaknya benar-benar terserah browser jika dia memiliki fitur untuk mematikannya.

Jika ini adalah informasi footer, saya akan merekomendasikan menggunakan lembar gaya cetak dan di dalam lembar gaya itu untuk melakukannya

display: none;

Untuk ID atau kelas footer tertentu.

Untuk membuat lembar gaya cetak, Anda perlu menambahkan ini ke kepala.

<link rel="stylesheet" type="text/css" href="/css/print.css" media="print" />
Ólafur Waage
sumber
2

Saat ini, Anda dapat menggunakan history APIuntuk mengubah URL sebelum mencetak, lalu mengubahnya kembali:

var curURL = window.location.href;
history.replaceState(history.state, '', '/');
window.print();
history.replaceState(history.state, '', curURL);

Tetapi Anda perlu membuat PRINTtombol khusus untuk diklik pengguna.

James Yang
sumber
Menggunakan solusi Anda, saya masih melihat " domain-name.com " dicetak di sudut kanan atas. Itu menghapus semuanya setelah itu.
Tod Birdsall
1

Di Google Chrome, ini dapat dilakukan dengan mengatur margin ke 0, atau jika dicetak funky, kemudian menyesuaikannya cukup untuk mendorong teks yang tidak diinginkan ke area halaman yang tidak dapat dicetak. Saya mencobanya dan berhasil: D

masukkan deskripsi gambar di sini

Ardee Aram
sumber
1

Masalah browser tetapi dapat diselesaikan dengan ini:

<style type="text/css" media="print">
      @media print
      {
         @page {
           margin-top: 0;
           margin-bottom: 0;
         }
         body  {
           padding-top: 72px;
           padding-bottom: 72px ;
         }
      } 
</style>
Md. Hasibul Huq
sumber
Suara positif karena Anda menyertakan CSS yang mengembalikan margin pada tempatnya. Terima kasih!
Tod Birdsall
0

Saya setuju dengan sebagian besar jawaban yang mengatakan bahwa ini adalah pengaturan browser tetapi Anda tetap dapat mencapai apa yang Anda inginkan melalui COM. Perlu diingat bahwa sebagian besar browser masih memiliki masalah dengan itu dan bahkan IE akan menaikkan bilah keamanan COM kepada pengguna. Jadi, kecuali itu bukan sesuatu yang Anda tawarkan dalam organisasi, jangan lakukan itu.

hash
sumber
0

Saya memiliki masalah yang sama. Saya ingin tahu apakah mungkin membuat HTML untuk dicetak melalui plugin jquery: http://www.recoding.it/?p=138

Kemudian kirim HTML ke script php (menggunakan panggilan ajax), buat pdf dengan http://www.xhtml2pdf.com/ atau http://code.google.com/p/wkhtmltopdf/ .

Setelah itu, pdf dapat ditampilkan (dengan mengatur jenis konten yang sesuai dan rendering langsung) atau ditampilkan dengan http-Redirect ke pdf yang dihasilkan.

PDF yang dihasilkan di folder pfd_for_printing dapat bertindak sebagai cache dan dihapus oleh pekerjaan sekali sehari.

chris
sumber
Saya ingin mencetak sebagian halaman (dengan gaya) ke PDF ... Bagaimana cara mencapainya? stackoverflow.com/questions/25082395/…
SearchForKnowledge
0

Di Chrome 57 hal berikut berfungsi untuk saya, jika Anda memiliki kendali atas halaman HTML yang perlu dicetak (dalam kasus saya, saya perlu mencetak label kecil berukuran 3x1 inci):

  • Hapus elemen judul HTML dari header (baik sementara menggunakan jquery atau secara permanen jika halaman tersebut tidak benar-benar membutuhkan judul)
  • setel margin @halaman ke 0 seperti yang disebutkan oleh @Chamika Sandamal

Hal ini mengakibatkan pencetakan halaman yang hanya berisi teks tubuh, tidak ada URL, tidak ada # halaman dll.

Johnny
sumber
0
<style type="text/css" media="print">
  @page {
    size: auto;  
    margin: 0;  
  }
</style>
//now set manual padding to body
<style>
  body{
    padding-left: 1.3cm;
    padding-right: 1.3cm; 
    padding-top: 1.1cm;
  }
</style>
Rajiv Chaturvedi
sumber
kode ini hanya menghapus margin. itu sebabnya url tidak ditampilkan. tetapi ketika Anda menggunakan ini, Anda kehilangan nomor halaman.
Pramod Deshmukh
saya hanya ingin menghapus url halaman di cetak bukan nomor halaman
Pramod Deshmukh
0
@media print { a[href]:after { content: none !important; } }
Rashid Khitilov
sumber
0

Ini berfungsi dengan baik untuk saya menggunakan jquery

<style>
  @media print { @page { margin: 0; } 
   body { margin: 1.6cm; } }
</style>
Mugeesh Husain
sumber
-1

Mungkin Anda bisa mencoba chrome (Mungkin Safari juga)

Url & nomor halaman di header & footer tidak terlihat saat saya mencetak ke pdf di OSX dengan Google Chrome.

Maaf tidak yakin apakah ini berlaku untuk windows

PhilD
sumber
-1

Saya memiliki trik untuk menghapusnya dari halaman cetak di Firefox. Gunakan ini:

<html moznomarginboxes mozdisallowselectionprint>

Di tag html Anda harus menggunakan moznomarginboxes mozdisallowselectionprint. Saya yakin ini akan banyak membantu Anda.

Arya
sumber
-1
@media print {
    #Header, #Footer { display: none !important; }
}

Cek link ini

Lien Vu
sumber
1
Halo selamat datang di SO, terima kasih telah mencoba menjawab pertanyaan ini. Bisakah Anda memberikan lebih banyak penjelasan di balik jawaban Anda dan logika di balik perbaikan Anda? Bersulang!
James Wong - Kembalikan Monica
Hai, Terima kasih, ini berfungsi dengan sempurna di chrome (setidaknya), saya tidak tahu mengapa orang-orang memilih solusi sempurna ini.
Saman
-1

Ini akan menjadi solusi paling sederhana. Saya mencoba sebagian besar solusi di internet tetapi hanya ini yang membantu saya.

@print {
    @page :footer {
        display: none
    }

    @page :header {
        display: none
    }
}
Zanyar J. Ahmed
sumber
1
Di browser apakah ini berfungsi? Di Chrome 80 itu tidak berfungsi.
Ruben S
-3

Yah, saya mencari jauh-jauh ke atas dan ke bawah karena saya membutuhkan jawaban untuk saya dan proyek saya, dan sampai pada kesimpulan bahwa, sebenarnya tidak peduli informasi apa yang Anda tampilkan di alamat url, terserah:

if (!$_SESSION["valid_user"]) 

Jadi, bahkan jika seseorang hanya mengetikkan alamat persis dari halaman cetak Anda, dia akan mendapatkan .... Halaman login :)

Aleksandar
sumber