Viele Entwickler möchten das Druckerlebnis ihrer Webseiten verbessern . Es kommt jedoch zu Frustration, wenn die Standarddruckeinstellungen des Browsers wie Kopf- und Fußzeilen sowie Ränder die gewünschte Darstellung beeinträchtigen. Gibt es eine Lösung zum Anpassen dieser Einstellungen, entweder über CSS oder JavaScript?
Die CSS-Spezifikation stellt die @page-Direktive bereit, die es Entwicklern ermöglicht um Formatierungsoptionen speziell für gedruckte Dokumente zu definieren. Mit @page ist es möglich, Seitengröße, Ausrichtung und Ränder anzugeben.
<br>@page {<br> Größe: automatisch;<br> Rand: 0 mm;<br> }<br>
Indem wir den Rand auf 0 mm setzen, deaktivieren wir effektiv die Standardeinstellung des Browsers Ränder. Allerdings weist dieser Ansatz Einschränkungen auf.
Leider variiert das Browserverhalten in Bezug auf @page erheblich. Während moderne Browser wie Chrome und Firefox @page unterstützen, ist dies bei älteren Versionen wie Firefox 3.6 und Internet Explorer 7 nicht der Fall. Darüber hinaus fehlt Safari immer noch die Unterstützung für das Festlegen von Druckerseitenrändern.
Selbst in unterstützten Browsern ist das Ergebnis möglicherweise nicht ideal. Wenn Sie beispielsweise im Internet Explorer den Rand auf 0 mm setzen, wird die Kopf-/Fußzeile nicht ausgeblendet, sondern der Seiteninhalt wird korrekt positioniert, wobei die nicht transparente Kopf-/Fußzeile des Browsers darüber liegt.
In Firefox ist das @ Seitenrandeinstellungen werden berücksichtigt, aber sowohl die Kopf-/Fußzeile des Browsers als auch der Seiteninhalt werden angezeigt, was zu einer Mischung aus Browser-Steuerelementen und Ihrem Inhalt führt.
Opera verhält sich Ähnlich wie Firefox, mit nicht standardmäßigen Rändern, die dazu führen, dass der Header den Seiteninhalt teilweise überlappt.
Chrome hat sich als Browser herauskristallisiert mit dem für dieses Szenario am besten geeigneten Verhalten. Indem Chrome den @page-Rand so klein einstellt, dass er mit der Kopf-/Fußzeilenposition in Konflikt steht, werden sie effektiv ausgeblendet.
Es ist wichtig zu beachten, dass sich dieser Ansatz nur auf die Ränder der spezifischen Seite auswirkt, die gedruckt wird. Es hat keinen Einfluss auf die allgemeinen Druckeinstellungen für den Browser.
Das Deaktivieren von Kopfzeilen, Fußzeilen und Rändern während des Druckens von einer Webseite stellt aufgrund von Browser-Inkonsistenzen eine Herausforderung dar. Die @page-Direktive von CSS bietet zwar einige Anpassungsoptionen, ihre Wirksamkeit variiert jedoch je nach Browser. Chrome bietet derzeit die beste Lösung zum Ausblenden von Kopf- und Fußzeilen, indem es zulässt, dass Seitenränder mit ihrer Position in Konflikt geraten. Allerdings können Browser-Updates und zukünftige Entwicklungen zu Änderungen dieses Verhaltens führen.
Das obige ist der detaillierte Inhalt vonKann ich die Druckoptionen auf meiner Webseite anpassen, um Kopf- und Fußzeilen sowie Ränder zu deaktivieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!