![]() | HTMLWorld: Home | Hier werben | Impressum | |
|
|
|
|
|
|
|
CSS-Artikel: Druckansichten mit Cascading Style Sheets (CSS)von Michael Stöckel Alternativen zum Erstellen einer Druckansicht
|
| CSS-Befehl/Bereiche | Bedeutung |
|---|---|
@page |
Definition eines Seitenlayoutes |
size |
Höhe und Breite des Seitenlayoutes |
margin |
Abstand zwischen Seitenrand und Seiteninhalt |
marks |
Angabe von Schnitt- und Passermarken |
page-break-before |
Seitenumbruch vor einem HTML-Element |
page-break-after |
Seitenumbruch nach einem HTML-Element |
page-break-inside |
Seitenumbruch während eines HTML-Elementes |
orphans |
Verhindern von Seitenumbrüchen in Fließtext |
widows |
Zeilenanzahl von Fließtext nach Seitenumbruch |
Jeder Browser legt für das Drucken eigene Maße für die Seitenränder auf dem Papier standardmäßig fest. Diese Angaben können mit Cascading Style Sheets nicht beeinflusst werden. Es wird empfohlen, trotzdem für die Inhalte zum Drucken einen Abstand zum Seitenrand anzugeben (CSS-Befehle margin bzw. padding), aber die Werte können auf 0 gesetzt werden. Dadurch steht trotzdem der maximal mögliche Raum zur Verfügung.
Bezüglich der Seitenränder ist zu beachten, dass die Browser im Normalfall eine Kopf- und eine Fußzeile mitliefern, in der Informationen wie das Druckdatum, der Titel der Webseite, die Seitenzahl und die URL angegeben werden. Bei einer CSS-Definition zum Seitenrand kann sich das Drucklayout mit diesen Angaben, wenn sie mit ausgegeben werden sollen, überschneiden.
In den Einstellungen der gängigen Browser ist es möglich das Drucken von Hintergründen (Bild oder Farbe) ein- und auszuschalten. Normalerweise ist diese Einstellung deaktiviert. Das ist auch gut so, denn sonst würde ohne Eingreifen des Nutzers der Tintenverbrauch beim Tintenstrahldrucker ins Unermessliche steigen und die Lesbarkeit der Webseite ist beeinträchtigt.
Allgemein gilt hier die Empfehlung, dass der Hintergrund beim Drucken immer transparent sein sollte. Dies wird durch das CSS-Kommando background-color:transparent gewährleistet. Wenn es sich beim Hintergrund um ein Bild handelt, lässt man einfach die Angabe background-image:url(...) weg.
Trotz der Standardeinstellung der Browser wird empfohlen, explizit Angaben zum Hintergrund zu machen.
Für das Drucken wird grundsätzlich die Schriftfarbe schwarz empfohlen. Den Webdesignern wird es nahegelegt, diese Schriftfarbe explizit anzugeben, obwohl die Browser Schriften generell schwarz drucken. Es ist nicht unüblich, dass wichtige Details, Aussagen, Informationen usw. auf einer Webseite über die Farbe hervorgehoben werden. Dazu gibt es verschiedene Optionen für das Drucklayout, wie man wichtige Teile trotzdem hervorheben kann.
Im Browser sind im Normalfall serifenlose Schriftarten wie Veranda oder Arial im Gebrauch, während man beim Drucken auch Schriften wie Georgia oder "Times New Roman" sehen kann. Dies gilt vor allem bei längeren Texten. Die Überschriften in Drucklayouts werden aber üblicherweise in serifenlose Schriftarten dargestellt.
Aufgrund der vielen möglichen Bildschirmauflösungen ist es bei der Betrachtung einer Webseite im Browser nicht unbedingt sinnvoll, Schriftgrößen in einer festen Einheit wie pt anzugeben. Je kleiner die Auflösung ist, desto größer werden die Textelemente automatisch. Beim Drucklayout ist es aber absolut vertretbar, Größenangaben mit festen Einheiten anzugeben.
Für einzelne Textabsätze gibt es für Drucklayouts zwei übliche Regeln, die zwar nicht unbedingt eingehalten werden müssen, es aber fast schon schlechter Stil ist, wenn man sie nicht beachtet:
Wenn zwei voneinander unabhängige Textabsätze nacheinander folgen, ist es üblich, dass der Abstand eine Leerzeile beträgt. Mit Hilfe des CSS-Kommandos margin kann der Abstand individuell festgelegt werden.
Bei Drucklayouts ist es ebenfalls üblich, dass die erste Zeile eines Textabsatzes eingerückt dargestellt wird. Durch die CSS-Eigenschaft text-indent wird eine Einrückung nach Bedarf angegeben. Beispiel:
p+p {margin-top:-1%; text-indent:2%}
Beim Drucken einer Webseite steht die Information und der Inhalt der Webseite im Vordergrund. Schmückende Elemente wie Werbebanner, Eingabefelder, Search-Buttons usw. sind deshalb für den Druck nicht notwendig.
In diesem Zusammenhang ist es notwendig, für die Elemente, die nicht mehr gebraucht werden, eine eindeutige Kennzeichnung zu vergeben. Am einfachsten geht dies indem alle nicht notwendigen Elemente entweder mit einer eigenen Klasse (class="...") ausgezeichnet oder durch ein anderes Element umrahmt werden. Die Style Sheets bieten hierzu den Befehl display mit dem die Elemente dann versteckt werden können.
Nehmen wir an, im Quellcode der Webseite wurde u.a. ein Hyperlink angegeben:
<a href="http://www.html-world.de">Link zu HTMLWorld</a>
Wenn die Webseite ohne weiteres Zutun ausgedruckt wird, würde nur der Text "Link zu HTMLWorld" angezeigt. Sollte der Leser des Drucks die dazugehörige Internetadresse nicht kennen, macht diese Information nicht viel Sinn.
Eine Abhilfe schafft hier die CSS-Eigenschaft content. Damit kann allgemein vor oder nach bereits bestehenden Inhalten weitere Elemente/weiterer Inhalt eingefügt werden. Ein Beispiel dafür ist das Ziel des Hyperlinks, was dadurch im Ausdruck mit angezeigt wird.
Es ist am sinnvollsten, das Ziel des Hyperlinks direkt nach dem eigentlichen Linktext mit anzuzeigen. Beispiel:
a:link:after { content: " (Link auf <" attr(href) ">) "; }
Weiterhin sollte bei Hyperlinks beachtet werden, daß man sie auch auf der Druckversion der Webseite erkennt. Die Beschreibung des Hyperlinks ist ein ganz normaler Text, also kann auch hier mit Attributen wie Schriftgröße, Schriftdicke, Kapitälchen usw. gearbeitet werden, um ihn gesondert zu kennzeichnen.
Die bekannten CSS-Befehle zum Einfügen von Seitenumbrüchen stellt ein probates Mittel da, um unliebsame Unterbrechungen in der Darstellung von einzelnen Elementen der Webseite zu vermeiden bzw. zu beeinflussen. Beispiel:
<h2 style="page-break-before:always">Kleine Überschrift</h2>
<h2 style="page-break-after:avoid">Kleine Überschrift</h2>
<p style="page-break-inside:avoid">
In diesem Textabsatz ist es möglich, dass ein Seitenumbruch
eingefügt werden kann. Soll dies wirklich passieren?
</p>
|
|
| « zurück | weiter » |
| Images verschiedener Größe gleich anpassen von Alphavader | |
| Seite verzerrt bei anderen Auflösungen. von Gorgomir | |
| img Stretcher auf fluid Div Container von Thunder1985 | |
| Dropdown Menu unter den header von Harburger1887 | |
| Kreis um Buchstabe... von karinsch | |
| footer unten platzieren von Alex... | |
| css-anfaengerin - schreibschutz von css-tempate entfernen von kiloberta | |
| Programmierer in Festanstellung oder Freiberuflich gesucht von GP.1226 | |
| Button Formatierungs Problem mit Transparentem Hintergrund von redlin | |
| Runde Ecken IE 8 / ohne JavaScript und BG Bilder? von kamikaetzelein |
| Images verschiedener Größe gleich anpassen von Alphavader | ||
| Seite verzerrt bei anderen Auflösungen. von Gorgomir | ||
| img Stretcher auf fluid Div Container von Thunder1985 | ||
| Dropdown Menu unter den header von Harburger1887 | ||
| Kreis um Buchstabe... von karinsch | ||
| footer unten platzieren von Alex... | ||
| css-anfaengerin - schreibschutz von css-tempate entfernen von kiloberta | ||
| Programmierer in Festanstellung oder Freiberuflich gesucht von GP.1226 | ||
| Button Formatierungs Problem mit Transparentem Hintergrund von redlin | ||
| Runde Ecken IE 8 / ohne JavaScript und BG Bilder? von kamikaetzelein | ||
| 3 Div Elemente ausrichten von Kanikkl | ||
| Bilder werden nur im IE angezeigt von Schmido | ||
| Contentinhalt vor Linkstruktur im Seitenquelltext von tbtip | ||
| Browserunterschiede in Darstellung von CrazyPlaya | ||
| Wie sollte ich das aufbauen? von Reelay |
|
|
|
|
|
|
Startseite | Kontakt | Über uns | Impressum | Datenschutz | Was sind das für grüne Links? Unsere Angebote: HTML World | Downloads World | IT-News World | HSDPA World | Traveling World | Weather World | HSDPA | Internet Stick |