Jak usunąć adres URL ze strony drukowania?

102

Chcę usunąć adres URL, który jest drukowany u dołu strony.

lubić:

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

Jak można go pominąć lub zapobiec jego wydrukowaniu?

Mówiąc dokładniej, czy jest jakiś sposób, aby zapobiec drukowaniu adresu URL strony, daty i tytułu strony podczas drukowania strony internetowej?

Martin Thoma
źródło
3
Czy można to zrobić programowo? To naprawdę konfiguracja strony w przeglądarce!
Shoban,
Całkowicie rzecz „ustawienia strony przeglądarki”. Ale uważam, że ten samouczek jest trochę pomocny w przypadku drukowania CSS.
Mayeenul Islam

Odpowiedzi:

123

Poniższy przykład kodu będzie działał dla Ciebie,

<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>

zobacz odpowiedź na temat Wyłączanie opcji drukowania przeglądarki (nagłówki, stopki, marginesy) ze strony?

i specyfikację @page

Chamika Sandamal
źródło
3
W przeglądarce Firefox 20.0 nie powoduje to usunięcia adresu URL z podglądu wydruku
Mirzhan Irkegulov
2
Rozwiązanie dla Firefoksa: stackoverflow.com/questions/2192806/ ...
Konstantin Vdovkin
Świetna odpowiedź. Jeszcze lepiej po prostu ustaw dolny margines, np.margin-bottom: 0mm;
CompanyDroneFromSector7G
2
To faktycznie działało na moim Firefoksie 50 @MirzhanIrkegulov
aexl
Osoba startująca w temacie zapytała, jak usunąć górne i dolne kolumny (tytuł strony adresu URL), które przeglądarka dodaje podczas podglądu wydruku.
Pavel Nazarov
39

znalazłem coś w samej przeglądarce.

Spróbuj wykonać te czynności. tutaj wspomniano o krokach, aby wyłączyć nagłówek i stopkę we wszystkich trzech głównych przeglądarkach.

Chrome Kliknij ikonę Menu w prawym górnym rogu przeglądarki. Kliknij Drukuj. Usuń zaznaczenie nagłówków i stopek w sekcji Opcje.

Firefox Kliknij Firefox w lewym górnym rogu przeglądarki. Umieść kursor myszy nad Drukuj i kliknij Ustawienia strony. Kliknij kartę Marginesy i nagłówek / stopka. Zmień każdą wartość w sekcji Nagłówki i stopki na - puste--.

Internet Explorer Kliknij ikonę koła zębatego w prawym górnym rogu przeglądarki. Umieść wskaźnik myszy na opcji Drukuj, a następnie kliknij opcję Ustawienia strony. Zmień każdą wartość w obszarze Nagłówki i stopki na -Puste-.

Jah Yusuff
źródło
18

Wyświetlanie adresu URL jest preferencją klienta przeglądarki, niedostępne dla skryptów działających na stronie (nie oszukujmy się, strona też nie może się po cichu wydrukować).

Aby uniknąć „wycieku” informacji w ciągu zapytania, można przesłać je za pomocą POST

Rowland Shaw
źródło
1
noooo ... POST nie jest mechanizmem szyfrowania - to wskazówka na temat możliwych skutków ubocznych żądania.
troelskn
Zamiast drukować długi, wielowierszowy ciąg zapytania. Z przyjemnością wydrukuję tylko adres URL
Shoban,
ciąg zapytania jest częścią adresu URL. jeśli adres URL jest za długi, należy to naprawić.
troelskn
4
Nie powiedziałem, że to kwestia szyfrowania - usuwa parametry zapytania z adresu URL, co było żądanym czynnikiem łagodzącym
Rowland Shaw
11

Jeśli ustawisz margines strony za pomocą kodu poniżej nagłówka, stopki zostaną pominięte na wydrukowanej stronie. Przetestowałem to w FireFox i Chrome.

<style media="print">
 @page {
  size: auto;
  margin: 0;
       }
</style>
Denver Chiwakira
źródło
1
Zauważ, że usuwa to margines między stronami w przeglądarce Firefox. Przykład: i.imgur.com/krDlC1K.png
Blaise
8

Opowiadam o Mozilli Firefox (mam nadzieję, że w innych przeglądarkach powinno być tak samo).

Kliknij menu Firefox , Idź do Drukuj , Wybierz Ustawienia strony z podmenu Drukuj. Na ekranie pojawi się wyskakujące okienko, przejdź do zakładki „Margines i nagłówek / stopka” .

W tym miejscu wybierz „PUSTY” dla nagłówka / stopki zgodnie z wymaganiami przed drukowaniem. Możesz sprawdzić podgląd, aby potwierdzić.

Mam nadzieję, że to pomoże.

Mitravind Garg
źródło
7

To mi pomogło: wydrukuj stronę bez linków

@media print {
    a[href]:after {
        content: none !important;
    }
}
mihaela
źródło
czy możesz to wyjaśnić
M. Suleman Khan
Miałem problem z hiperłączami bootstrap pokazującymi zawartość href na stronie wydruku. To rozwiązanie pomogło mi rozwiązać problem.
Mohsin
3

Możesz usunąć adres URL wyświetlany na drukowanym dokumencie za pomocą ustawień przeglądarki. Po prostu kliknij plik-> ustawienia strony-> nagłówek i stopka i ustaw wszystko jako puste. Jeśli masz, po prostu usuniesz & U z pola tekstowego stopki. pomóc Ci

Anju
źródło
2

Nie wiem, czy mówisz o stopce w rzeczywistej grafice, czy o adresie URL, który wykonuje proces drukowania w przeglądarce.

Jeśli jest to adres URL, proces drukowania naprawdę zależy od przeglądarki, jeśli ma funkcję, aby to wyłączyć.

Jeśli jest to informacja w stopce, polecam użycie arkusza stylów drukowania i wewnątrz tego arkusza stylów

display: none;

Dla konkretnego identyfikatora lub klasy stopki.

Aby zrobić arkusz stylów drukowania, musisz dodać to do głowy.

<link rel="stylesheet" type="text/css" href="/css/print.css" media="print" />
Ólafur Waage
źródło
2

W dzisiejszych czasach możesz history APIzmodyfikować adres URL przed wydrukowaniem, a następnie zmienić z powrotem:

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

Ale musisz utworzyć niestandardowy PRINTprzycisk, aby użytkownik mógł kliknąć.

James Yang
źródło
Korzystając z twojego rozwiązania, nadal widzę „ nazwa-domeny.com ” wydrukowane w prawym górnym rogu. Potem wszystko usunęło.
Tod Birdsall
1

W przeglądarce Google Chrome można to zrobić, ustawiając marginesy na 0 lub, jeśli drukuje się funky, a następnie dostosowując go na tyle, aby przesunąć niechciany tekst do niedrukowalnych obszarów strony. Spróbowałem i działa: D

wprowadź opis obrazu tutaj

Ardee Aram
źródło
1

Problem z przeglądarką, ale można go rozwiązać w następujący sposób:

<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
źródło
Głos za pozytywnymi, ponieważ dołączasz CSS, który przywraca marginesy. Dzięki!
Tod Birdsall
0

Zgodziłbym się z większością odpowiedzi, mówiąc, że to ustawienia przeglądarki, ale nadal możesz osiągnąć to, co chcesz, przez COM. Należy pamiętać, że większość przeglądarek nadal będzie mieć z tym problem, a nawet IE podniesie poprzeczkę bezpieczeństwa COM dla użytkowników. Więc jeśli nie jest to coś, co oferujesz w organizacji, nie rób tego.

haszysz
źródło
0

Mam ten sam problem. Zastanawiam się, czy możliwe jest utworzenie HTML do drukowania za pomocą wtyczki jquery: http://www.recoding.it/?p=138

Następnie wyślij kod HTML do skryptu php (używając wywołania Ajax), wygeneruj plik PDF za pomocą adresu http://www.xhtml2pdf.com/ lub http://code.google.com/p/wkhtmltopdf/ .

Następnie plik PDF można wyświetlić (ustawiając odpowiedni typ zawartości i bezpośrednie renderowanie) lub wyświetlić za pomocą przekierowania http do wygenerowanego pliku PDF.

Wygenerowane pliki PDF w folderze pfd_for_printing mogą działać jako pamięć podręczna i być usuwane przez zadanie raz dziennie.

chris
źródło
Chcę wydrukować część strony (ze stylami) do PDF ... Jak mogę to osiągnąć? stackoverflow.com/questions/25082395/…
SearchForKnowledge
0

W Chrome 57 działały dla mnie następujące rzeczy, jeśli masz kontrolę nad stroną HTML, która ma zostać wydrukowana (w moim przypadku potrzebowałem wydrukować małą etykietę 3 x 1 cala):

  • usuń element tytułu HTML z nagłówka (tymczasowo za pomocą jquery lub na stałe, jeśli strona tak naprawdę nie potrzebuje tytułu)
  • ustaw margines @ strony na 0, o czym wspomniał @Chamika Sandamal

Spowodowało to wydrukowanie strony, która zawierała tylko treść, żadnych adresów URL, żadnych numerów stron itp.

Jasio
źródło
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
źródło
ten kod usuwa tylko margines. dlatego URL nie wyświetla się. ale kiedy go używasz, tracisz numer strony.
Pramod Deshmukh
Chcę tylko usunąć adres URL strony z wydruku, a nie numeru strony
Pramod Deshmukh
0
@media print { a[href]:after { content: none !important; } }
Rashid Khitilov
źródło
0

To działa dobrze dla mnie przy użyciu jquery

<style>
  @media print { @page { margin: 0; } 
   body { margin: 1.6cm; } }
</style>
Mugeesh Husain
źródło
-1

Być może mógłbyś spróbować chrome (prawdopodobnie Safari też)

Adres URL i numer strony w nagłówku i stopce nie są widoczne, gdy drukuję do pliku PDF w systemie OSX z Google Chrome.

Przepraszam, nie jestem pewien, czy dotyczy to okien

PhilD
źródło
-1

Mam sztuczkę, aby usunąć to ze strony drukowania w przeglądarce Firefox. Użyj tego:

<html moznomarginboxes mozdisallowselectionprint>

W tagu html musisz użyć moznomarginboxes mozdisallowselectionprint. Jestem pewien, że to ci bardzo pomoże.

aryjski
źródło
-1
@media print {
    #Header, #Footer { display: none !important; }
}

Sprawdź ten link

Lien Vu
źródło
1
Witam, witam w SO, dziękuję za próbę odpowiedzi na to pytanie. Czy możesz podać więcej wyjaśnień stojących za twoją odpowiedzią i logiką stojącą za twoją poprawką? Twoje zdrowie!
James Wong - Przywróć Monikę
Cześć, dzięki, to działa idealnie w chrome (przynajmniej), nie wiem, dlaczego ludzie nie głosowali na to idealne rozwiązanie.
Saman
-1

To będzie najprostsze rozwiązanie. Wypróbowałem większość rozwiązań w internecie, ale tylko to mi pomogło.

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

    @page :header {
        display: none
    }
}
Zanyar J.Ahmed
źródło
1
W jakiej przeglądarce to działa? W Chrome 80 to nie działa.
Ruben S