Ich verwende window.print () zum Drucken von Seiten, aber ich habe Kopf- und Fußzeilen mit Seitentitel, Dateipfad, Seitenzahl und Datum. Wie entferne ich sie?
Ich habe auch versucht, Stylesheet zu drucken.
#header, #nav, .noprint
{
display: none;
}
Bitte helfen Sie. Vielen Dank.
Antworten:
In Chrome ist es möglich, diese automatische Kopf- / Fußzeile mit auszublenden
Da der Inhalt bis an die Seitengrenzen reicht, fehlt die Kopf- / Fußzeile des Seitendrucks. In diesem Fall sollten Sie natürlich einige Ränder / Auffüllungen in Ihrem Körperelement festlegen, damit der Inhalt nicht bis zum Rand der Seite reicht. Da herkömmliche Drucker keinen Druck ohne Ränder erhalten können und es wahrscheinlich nicht das ist, was Sie wollen, sollten Sie Folgendes verwenden:
Wie Martin in einem Kommentar betonte, wird der Rand ignoriert und die gedruckte Version sieht seltsam aus, wenn die Seite ein langes Element hat, das über eine Seite hinausläuft (wie eine große Tabelle).
Zum Zeitpunkt des Originals dieser Antwort (Mai 2013) funktionierte sie nur in Chrome, war sich jetzt nicht sicher und musste nie wieder versucht werden. Wenn Sie Unterstützung für einen Browser benötigen, der nicht funktioniert, können Sie ein PDF im laufenden Betrieb erstellen und drucken (Sie können ein selbstdruckendes PDF erstellen, in das JavaScript eingebettet ist), aber das ist ein großer Aufwand.
quelle
body { margin: 1.6cm; }
ich den richtigen Rand für mich ignoriert (vielleicht weil ich ihn verwendet habetext-align:right
), also habe ich stattdessen einen<div class="container">
für meinen Inhalt erstellt und.container { margin: 1.6cm; }
stattdessen verwendet.body { margin: 1.6cm; }
- da es sich um einen Rand für das gesamte Dokument handelt - die vertikalen Ränder für mehrseitige Dokumente außer dem allerersten und dem letzten nicht berücksichtigt werden. Leider fällt mir keine Problemumgehung ein.Ich bin sicher, dass das Hinzufügen dieses Codes zu Ihrer CSS-Datei das Problem lösen wird
Sie können dies besuchen, um mehr darüber zu erfahren
quelle
Feuerfuchs :
moznomarginboxes
Attribut hinzufügen in<html>
Beispiel:
quelle
Heute ist mein Kollege auf das gleiche Problem gestoßen.
Da die "margin: 0" -Lösung für chrombasierte Browser funktioniert, jedoch Internet Explorer chrombasierte , druckt die Fußzeile auch dann weiter, wenn die @ page-Ränder auf Null gesetzt sind.
Die Lösung (eher ein Hack) bestand darin, einen negativen Rand auf die @ Seite zu setzen.
Bitte beachten Sie, dass der negative Rand nicht für die Y-Achse funktioniert, sondern nur für die X.
Ich hoffe es hilft.
quelle
Der CSS-Standard ermöglicht einige erweiterte Formatierungen. In CSS gibt es eine @ page-Direktive, die eine Formatierung ermöglicht, die nur für ausgelagerte Medien (wie Papier) gilt. Siehe http://www.w3.org/TR/1998/REC-CSS2-19980512/page.html .
und für Firefox verwenden Sie es
In Firefox https://bug743252.bugzilla.mozilla.org/attachment.cgi?id=714383 ( anzeigen :: Tag HTML anzeigen).
In Ihrem Code ersetzen
<html>
mit<html moznomarginboxes mozdisallowselectionprint>.
quelle
quelle
Dies ist die einfachste Lösung. Ich habe die meisten Lösungen im Internet ausprobiert, aber nur das hat mir geholfen.
quelle
@page { margin: 0; }
funktioniert gut in Chrome und Firefox. Ich habe keine Möglichkeit gefunden, den IE über CSS zu reparieren. Sie können jedoch im IE auf Ihrem eigenen Computer unter in die Seite einrichten und die Ränder auf 0 setzen. Drücken Sie die Alt-Taste und dann das Dateimenü in der oberen linken Ecke, um die Seite einzurichten. Dies funktioniert jeweils nur für eine Maschine ...quelle
1. Für Chrome & IE
Fügen Sie das Attribut moznomarginboxes in Beispiel hinzu:
quelle
Ich habe versucht, die Kopf- und Fußzeile einer HTML-Seite zu entfernen, die ich manuell gedruckt habe.
Keine Lösung auf dieser Seite hat für mich funktioniert, aber einfach durch Definieren meiner eigenen Fußzeile, wie hier erläutert , würde Firefox keine eigene Kopf- und Fußzeile hinzufügen.
Dies funktioniert unter Chrome leider nicht.
In CSS:
Fügen Sie dies Ihrem HTML hinzu:
quelle
Wenn Sie bis zu diesem Punkt nach unten scrollen, habe ich eine Lösung für Firefox gefunden. Es werden Inhalte aus einem bestimmten Div ohne die Fuß- und Kopfzeilen gedruckt. Sie können nach Ihren Wünschen anpassen.
Laden Sie zunächst dieses Addon herunter und installieren Sie es: JSPrintSetup .
Zweitens schreiben Sie diese Funktion:
Drittens tun Sie dies in Ihrem Code, wo immer Sie den Druckcode schreiben möchten (ich habe JQuery verwendet. Sie können einfaches Javascript verwenden):
Natürlich benötigen Sie den Link zum Klicken:
Und dein Div zum Drucken:
quelle
Sie müssen keinen Code schreiben. Ändern Sie kurz vor dem ersten Aufruf von window.print () die Druckeinstellungen Ihres Browsers. zum Beispiel in Firefox:
und ein weiteres Beispiel für IE (ich verwende IE 11 für frühere Versionen. Sie können sehen, dass Firefox oder Internet Explorer die URL nicht auf jeder Seite drucken ):
quelle