tiptom.ch

Homepage

Testseiten

PHP- & SSI-Testseiten

Bildschirm- und Druckversion:

Bildschirm- und Druckversion mit PHP

Hier geht es um die Frage: Wie kann man von der gleichen Datei eine Bildschirm- und eine Druckversion anbieten, die grundsätzlich den gleichen Inhalt haben, aber in beiden Versionen zusätzliche Elemente, die nur in dieser bestimmten Version angezeigt werden.

Testseite anzeigen

Ziel:

Bildschirm Druckversion
Menü
Punkt 1
Punkt 2
Titel
Inhalt Inhalt
Inhalt Inhalt
Inhalt Inhalt
Inhalt Inhalt
Inhalt Inhalt
(Serifenlose
Schrift)
Fusszeile mit
E-Mail-Adresse
Titel
Inhalt Inhalt Inhalt
Inhalt Inhalt Inhalt
Inhalt Inhalt Inhalt
Inhalt Inhalt Inhalt
(Serifen-Schrift)
Fusszeile mit
E-Mail-Adresse
und URL der Datei

Es ist mir klar, dass dies für neue Browser gar nicht mehr notwendig ist, weil man ja mit verschiedenen Stylesheets für Bildschirmanzeige und Druck angeben kann, dass unerwünschte Elemente ausgeblendet werden. Die hier präsentierte Lösung funktioniert jedoch mit allen Browsern, auch mit denjenigen, die gar kein CSS unterstützen.

Ansichten:

Quelltexte:

(*) Nur-Text-Datei (ca. 6 kB) - für anständige Browser (z.B. Netscape, Opera, Mozilla).
Der MS Internet Explorer 5.5 und 6.0 unter Windows zeigt statt dem PHP-(HTML)-Quelltext leider die Seite an, obwohl diese Datei mit dem MIME-Type text/plain ausgeliefert wird und der Dateiname auf *.txt endet.
(**) HTML-Datei (ca. 14 kB, automatisch generiert und invalide), die den Quellcode bunt anzeigt (Syntax-Highlighting). Für alle Browser inklusive MS IE.

Alles, was der Browser zu sehen kriegt, ist W3C-Standardkonform.
Das HTML ist HTML 4.01 Transitional.
Die Stylesheets sind CSS Level 2 konform (keine Fehler, keine Warnungen).
(Ohne die Pseudoklassen a:hover und die @media-Angaben im Druck-Stylesheet wären die Stylesheets auch CSS Level 1 konform.)

W3C-Validatoren-Resultate:
HTML-Seiten: Normalversion, Druckversion, Bildschirmversion
Stylesheets: Bildschirm-CSS, Druck-CSS

Der ungeparste Quellcode ist übrigens nicht standardkonform, u.a. weil in den <SCRIPT language="php">-Elementen kein Attribut type="..." stehen darf. (Es gibt sonst einen Error beim Parsen auf dem Webserver.)
Allerdings zeigen sämtliche von mir getesteten Browser unter Windows (Netscape 2.0, 3.0, 4.75, 6.1, MS Internet Explorer 5.5, Opera 5.12 und 6.0) auch die ungeparste Seite korrekt an. Das ist beruhigend zu wissen, falls der PHP-Interpreter einmal nicht funktionieren sollte.


Copyright © 2002-2007 by Thomas Lüthi info@tomogramm.ch
http://www.tiptom.ch/tests/phpssi/2versionen.php
06.06.2012